// ************************************************************************ //
// WARNING                                                                    
// -------                                                                    
// The types declared in this file were generated from data read from a       
// Type Library. If this type library is explicitly or indirectly (via        
// another type library referring to this type library) re-imported, or the   
// 'Refresh' command of the Type Library Editor activated while editing the   
// Type Library, the contents of this file will be regenerated and all        
// manual modifications will be lost.                                         
// ************************************************************************ //

// C++ TLBWRTR : $Revision:   1.134.1.39  $
// File generated on 14.01.2010 12:28:35 from Type Library described below.

// ************************************************************************ //
// Type Lib: K:\DebugU\Exe\kAPI5.TLB (1)
// IID\LCID: {0422828C-F174-495E-AC5D-D31014DBBE87}\0
// Helpfile: 
// DepndLst: 
//   (1) v2.0 stdole, (C:\WINDOWS\System32\stdole2.tlb)
//   (2) v4.0 StdVCL, (C:\WINDOWS\System32\stdvcl40.dll)
// ************************************************************************ //
#ifndef   __Kompas6API5_TLB_h__
#define   __Kompas6API5_TLB_h__

#pragma option push -b -w-inl

#include <utilcls.h>
#if !defined(__UTILCLS_H_VERSION) || (__UTILCLS_H_VERSION < 0x0500)
//
// The code generated by the TLIBIMP utility or the Import|TypeLibrary 
// and Import|ActiveX feature of C++Builder rely on specific versions of
// the header file UTILCLS.H found in the INCLUDE\VCL directory. If an 
// older version of the file is detected, you probably need an update/patch.
//
#error "This file requires a newer version of the header UTILCLS.H" \
       "You need to apply an update/patch to your copy of C++Builder"
#endif
#include <olectl.h>
#include <ocidl.h>
#if defined(USING_ATLVCL) || defined(USING_ATL)
#if !defined(__TLB_NO_EVENT_WRAPPERS)
#include <atl/atlmod.h>
#endif
#endif


// *********************************************************************//
// Forward reference of some VCL types (to avoid including STDVCL.HPP)    
// *********************************************************************//
namespace Stdvcl {class IStrings; class IStringsDisp;}
using namespace Stdvcl;
typedef TComInterface<IStrings> IStringsPtr;
typedef TComInterface<IStringsDisp> IStringsDispPtr;

namespace Kompas6api5_tlb
{

// *********************************************************************//
// HelpString: 
// Version:    1.0
// *********************************************************************//


// *********************************************************************//
// GUIDS declared in the TypeLibrary. Following prefixes are used:        
//   Type Libraries     : LIBID_xxxx                                      
//   CoClasses          : CLSID_xxxx                                      
//   DISPInterfaces     : DIID_xxxx                                       
//   Non-DISP interfaces: IID_xxxx                                        
// *********************************************************************//
extern __declspec (package) const GUID LIBID_Kompas6API5;
extern __declspec (package) const GUID DIID_KompasObject;
extern __declspec (package) const GUID DIID_ksDocument2D;
extern __declspec (package) const GUID DIID_ksObject2DNotify;
extern __declspec (package) const GUID CLSID_Object2DNotify;
extern __declspec (package) const GUID DIID_ksSelectionMngNotify;
extern __declspec (package) const GUID CLSID_SelectionMngNotify;
extern __declspec (package) const GUID DIID_ksObject2DNotifyResult;
extern __declspec (package) const GUID DIID_ksDocument2DNotify;
extern __declspec (package) const GUID CLSID_Document2DNotify;
extern __declspec (package) const GUID DIID_ksDocument3D;
extern __declspec (package) const GUID DIID_ksDocument3DNotify;
extern __declspec (package) const GUID CLSID_Document3DNotify;
extern __declspec (package) const GUID DIID_ksEntity;
extern __declspec (package) const GUID DIID_ksAttribute3DCollection;
extern __declspec (package) const GUID DIID_ksAttribute3D;
extern __declspec (package) const GUID DIID_ksFeatureCollection;
extern __declspec (package) const GUID DIID_ksFeature;
extern __declspec (package) const GUID DIID_ksEntityCollection;
extern __declspec (package) const GUID DIID_ksPart;
extern __declspec (package) const GUID DIID_ksObject3DNotify;
extern __declspec (package) const GUID CLSID_Object3DNotify;
extern __declspec (package) const GUID DIID_ksObject3DNotifyResult;
extern __declspec (package) const GUID DIID_ksPlacement;
extern __declspec (package) const GUID DIID_ksComponentPositioner;
extern __declspec (package) const GUID DIID_ksKompasObjectNotify;
extern __declspec (package) const GUID DIID_ksDocumentFileNotify;
extern __declspec (package) const GUID DIID_ksDocument3DNotifyResult;
extern __declspec (package) const GUID DIID_ksSpecRoughParam;
extern __declspec (package) const GUID DIID_ksEllipseParam;
extern __declspec (package) const GUID DIID_ksEllipseArcParam;
extern __declspec (package) const GUID DIID_ksEllipseArcParam1;
extern __declspec (package) const GUID DIID_ksEquidistantParam;
extern __declspec (package) const GUID DIID_ksParagraphParam;
extern __declspec (package) const GUID DIID_ksTextItemParam;
extern __declspec (package) const GUID DIID_ksTextLineParam;
extern __declspec (package) const GUID DIID_ksTextItemFont;
extern __declspec (package) const GUID DIID_ksCornerParam;
extern __declspec (package) const GUID DIID_ksContourParam;
extern __declspec (package) const GUID DIID_ksLayerParam;
extern __declspec (package) const GUID DIID_ksLineParam;
extern __declspec (package) const GUID DIID_ksRegularPolygonParam;
extern __declspec (package) const GUID DIID_ksRectangleParam;
extern __declspec (package) const GUID DIID_ksBaseParam;
extern __declspec (package) const GUID DIID_ksLtVariant;
extern __declspec (package) const GUID DIID_ksUserParam;
extern __declspec (package) const GUID DIID_ksMathPointParam;
extern __declspec (package) const GUID DIID_ksCurvePicture;
extern __declspec (package) const GUID DIID_ksCurvePattern;
extern __declspec (package) const GUID DIID_ksTAN;
extern __declspec (package) const GUID DIID_ksCON;
extern __declspec (package) const GUID DIID_ksInertiaParam;
extern __declspec (package) const GUID DIID_ksMassInertiaParam;
extern __declspec (package) const GUID DIID_ksMathematic2D;
extern __declspec (package) const GUID DIID_ksDynamicArray;
extern __declspec (package) const GUID DIID_ksRDimDrawingParam;
extern __declspec (package) const GUID DIID_ksRDimSourceParam;
extern __declspec (package) const GUID DIID_ksRDimParam;
extern __declspec (package) const GUID DIID_ksLineSegParam;
extern __declspec (package) const GUID DIID_ksCircleParam;
extern __declspec (package) const GUID DIID_ksArcByAngleParam;
extern __declspec (package) const GUID DIID_ksArcByPointParam;
extern __declspec (package) const GUID DIID_ksPointParam;
extern __declspec (package) const GUID DIID_ksHatchParam;
extern __declspec (package) const GUID DIID_ksTextParam;
extern __declspec (package) const GUID DIID_ksNurbsPointParam;
extern __declspec (package) const GUID DIID_ksDoubleValue;
extern __declspec (package) const GUID DIID_ksNurbsParam;
extern __declspec (package) const GUID DIID_ksConicArcParam;
extern __declspec (package) const GUID DIID_ksCentreParam;
extern __declspec (package) const GUID DIID_ksPlacementParam;
extern __declspec (package) const GUID DIID_ksRasterParam;
extern __declspec (package) const GUID DIID_ksPolylineParam;
extern __declspec (package) const GUID DIID_ksInsertFragmentParam;
extern __declspec (package) const GUID DIID_ksViewParam;
extern __declspec (package) const GUID DIID_ksLBreakDimSource;
extern __declspec (package) const GUID DIID_ksBreakDimDrawing;
extern __declspec (package) const GUID DIID_ksLBreakDimParam;
extern __declspec (package) const GUID DIID_ksABreakDimParam;
extern __declspec (package) const GUID DIID_ksInsertFragmentParamEx;
extern __declspec (package) const GUID DIID_ksBezierParam;
extern __declspec (package) const GUID DIID_ksBezierPointParam;
extern __declspec (package) const GUID DIID_ksDimTextParam;
extern __declspec (package) const GUID DIID_ksLDimSourceParam;
extern __declspec (package) const GUID DIID_ksDimDrawingParam;
extern __declspec (package) const GUID DIID_ksLDimParam;
extern __declspec (package) const GUID DIID_ksADimSourceParam;
extern __declspec (package) const GUID DIID_ksDimensionPartsParam;
extern __declspec (package) const GUID DIID_ksADimParam;
extern __declspec (package) const GUID DIID_ksRBreakDrawingParam;
extern __declspec (package) const GUID DIID_ksRBreakDimParam;
extern __declspec (package) const GUID DIID_ksQualityItemParam;
extern __declspec (package) const GUID DIID_ksQualityContensParam;
extern __declspec (package) const GUID DIID_ksIterator;
extern __declspec (package) const GUID DIID_ksFragment;
extern __declspec (package) const GUID DIID_ksFragmentLibrary;
extern __declspec (package) const GUID DIID_ksTechnicalDemandParam;
extern __declspec (package) const GUID DIID_ksOrdinatedSourceParam;
extern __declspec (package) const GUID DIID_ksOrdinatedDimParam;
extern __declspec (package) const GUID DIID_ksOrdinatedDrawingParam;
extern __declspec (package) const GUID DIID_ksSheetSize;
extern __declspec (package) const GUID DIID_ksStandartSheet;
extern __declspec (package) const GUID DIID_ksSheetPar;
extern __declspec (package) const GUID DIID_ksDocumentParam;
extern __declspec (package) const GUID DIID_ksDimensionsOptions;
extern __declspec (package) const GUID DIID_ksSnapOptions;
extern __declspec (package) const GUID DIID_ksLibraryStyleParam;
extern __declspec (package) const GUID DIID_ksStampNotify;
extern __declspec (package) const GUID DIID_ksStamp;
extern __declspec (package) const GUID DIID_ksSheetOptions;
extern __declspec (package) const GUID DIID_ksCurvePatternEx;
extern __declspec (package) const GUID DIID_ksCurveStyleParam;
extern __declspec (package) const GUID DIID_ksTextStyleParam;
extern __declspec (package) const GUID DIID_ksHatchLineParam;
extern __declspec (package) const GUID DIID_ksHatchStyleParam;
extern __declspec (package) const GUID DIID_ksRectParam;
extern __declspec (package) const GUID DIID_ksShelfPar;
extern __declspec (package) const GUID DIID_ksRoughPar;
extern __declspec (package) const GUID DIID_ksRoughParam;
extern __declspec (package) const GUID DIID_ksChar255;
extern __declspec (package) const GUID DIID_ksLeaderParam;
extern __declspec (package) const GUID DIID_ksPosLeaderParam;
extern __declspec (package) const GUID DIID_ksBrandLeaderParam;
extern __declspec (package) const GUID DIID_ksMarkerLeaderParam;
extern __declspec (package) const GUID DIID_ksType1;
extern __declspec (package) const GUID DIID_ksType2;
extern __declspec (package) const GUID DIID_ksType3;
extern __declspec (package) const GUID DIID_ksType5;
extern __declspec (package) const GUID DIID_ksType6;
extern __declspec (package) const GUID DIID_ksPhantom;
extern __declspec (package) const GUID DIID_ksRequestInfo;
extern __declspec (package) const GUID DIID_ksViewPointerParam;
extern __declspec (package) const GUID DIID_ksCutLineParam;
extern __declspec (package) const GUID DIID_ksToleranceBranch;
extern __declspec (package) const GUID DIID_ksToleranceParam;
extern __declspec (package) const GUID DIID_ksSpcColumnParam;
extern __declspec (package) const GUID DIID_ksRecordTypeAttrParam;
extern __declspec (package) const GUID DIID_ksNumberTypeAttrParam;
extern __declspec (package) const GUID DIID_ksSpcStyleColumnParam;
extern __declspec (package) const GUID DIID_ksSpcStyleSectionParam;
extern __declspec (package) const GUID DIID_ksSpcSubSectionParam;
extern __declspec (package) const GUID DIID_ksSpcTuningSectionParam;
extern __declspec (package) const GUID DIID_ksSpcTuningStyleParam;
extern __declspec (package) const GUID DIID_ksSpcStyleParam;
extern __declspec (package) const GUID DIID_ksSpcDescrParam;
extern __declspec (package) const GUID DIID_ksDocAttachedSpcParam;
extern __declspec (package) const GUID DIID_ksSpcObjParam;
extern __declspec (package) const GUID DIID_ksLibStyle;
extern __declspec (package) const GUID DIID_ksDataBaseObject;
extern __declspec (package) const GUID DIID_ksSpcDocumentNotify;
extern __declspec (package) const GUID DIID_ksSpcDocument;
extern __declspec (package) const GUID CLSID_SpcDocumentNotify;
extern __declspec (package) const GUID DIID_ksSpcObjectNotify;
extern __declspec (package) const GUID DIID_ksSpecificationNotify;
extern __declspec (package) const GUID DIID_ksSpecification;
extern __declspec (package) const GUID CLSID_SpcObjectNotify;
extern __declspec (package) const GUID DIID_ksDocumentTxt;
extern __declspec (package) const GUID DIID_ksAttributeTypeParam;
extern __declspec (package) const GUID DIID_ksColumnInfoParam;
extern __declspec (package) const GUID DIID_ksAttributeParam;
extern __declspec (package) const GUID DIID_ksVariable;
extern __declspec (package) const GUID DIID_ksLibraryAttrTypeParam;
extern __declspec (package) const GUID DIID_ksAttributeObject;
extern __declspec (package) const GUID DIID_ksRequestInfo3D;
extern __declspec (package) const GUID DIID_ksMateConstraint;
extern __declspec (package) const GUID DIID_ksDefaultObject;
extern __declspec (package) const GUID DIID_ksModelLibrary;
extern __declspec (package) const GUID DIID_ksVariableCollection;
extern __declspec (package) const GUID DIID_ksMateConstraintCollection;
extern __declspec (package) const GUID DIID_ksPartCollection;
extern __declspec (package) const GUID DIID_ksMeshPartArrayDefinition;
extern __declspec (package) const GUID DIID_ksCircularPartArrayDefinition;
extern __declspec (package) const GUID DIID_ksCurvePartArrayDefinition;
extern __declspec (package) const GUID DIID_ksDerivativePartArrayDefinition;
extern __declspec (package) const GUID DIID_ksAxis2PlanesDefinition;
extern __declspec (package) const GUID DIID_ksAxisOperationsDefinition;
extern __declspec (package) const GUID DIID_ksAxis2PointsDefinition;
extern __declspec (package) const GUID DIID_ksAxisEdgeDefinition;
extern __declspec (package) const GUID DIID_ksMeshCopyDefinition;
extern __declspec (package) const GUID DIID_ksCircularCopyDefinition;
extern __declspec (package) const GUID DIID_ksCurveCopyDefinition;
extern __declspec (package) const GUID DIID_ksMirrorCopyDefinition;
extern __declspec (package) const GUID DIID_ksMirrorCopyAllDefinition;
extern __declspec (package) const GUID DIID_ksConicSpiralDefinition;
extern __declspec (package) const GUID DIID_ksCylindricSpiralDefinition;
extern __declspec (package) const GUID DIID_ksPolyLineDefinition;
extern __declspec (package) const GUID DIID_ksPolyLineVertexParam;
extern __declspec (package) const GUID DIID_ksSplineDefinition;
extern __declspec (package) const GUID DIID_ksBaseExtrusionDefinition;
extern __declspec (package) const GUID DIID_ksBossExtrusionDefinition;
extern __declspec (package) const GUID DIID_ksCutExtrusionDefinition;
extern __declspec (package) const GUID DIID_ksExtrusionSurfaceDefinition;
extern __declspec (package) const GUID DIID_ksFaceDefinition;
extern __declspec (package) const GUID DIID_ksEdgeDefinition;
extern __declspec (package) const GUID DIID_ksChamferDefinition;
extern __declspec (package) const GUID DIID_ksFilletDefinition;
extern __declspec (package) const GUID DIID_ksBaseLoftDefinition;
extern __declspec (package) const GUID DIID_ksBossLoftDefinition;
extern __declspec (package) const GUID DIID_ksCutLoftDefinition;
extern __declspec (package) const GUID DIID_ksLoftSurfaceDefinition;
extern __declspec (package) const GUID DIID_ksInclineDefinition;
extern __declspec (package) const GUID DIID_ksShellDefinition;
extern __declspec (package) const GUID DIID_ksBaseEvolutionDefinition;
extern __declspec (package) const GUID DIID_ksBossEvolutionDefinition;
extern __declspec (package) const GUID DIID_ksCutEvolutionDefinition;
extern __declspec (package) const GUID DIID_ksEvolutionSurfaceDefinition;
extern __declspec (package) const GUID DIID_ksRibDefinition;
extern __declspec (package) const GUID DIID_ksCutByPlaneDefinition;
extern __declspec (package) const GUID DIID_ksCutBySketchDefinition;
extern __declspec (package) const GUID DIID_ksPlaneOffsetDefinition;
extern __declspec (package) const GUID DIID_ksPlaneAngleDefinition;
extern __declspec (package) const GUID DIID_ksPlane3PointsDefinition;
extern __declspec (package) const GUID DIID_ksPlaneNormalToSurfaceDefinition;
extern __declspec (package) const GUID DIID_ksPlaneTangentToSurfaceDefinition;
extern __declspec (package) const GUID DIID_ksPlaneEdgePointDefinition;
extern __declspec (package) const GUID DIID_ksPlaneParallelDefinition;
extern __declspec (package) const GUID DIID_ksPlanePerpendicularDefinition;
extern __declspec (package) const GUID DIID_ksPlaneLineToEdgeDefinition;
extern __declspec (package) const GUID DIID_ksPlaneLineToPlaneDefinition;
extern __declspec (package) const GUID DIID_ksThinParam;
extern __declspec (package) const GUID DIID_ksExtrusionParam;
extern __declspec (package) const GUID DIID_ksRotatedParam;
extern __declspec (package) const GUID DIID_ksColorParam;
extern __declspec (package) const GUID DIID_ksBaseRotatedDefinition;
extern __declspec (package) const GUID DIID_ksBossRotatedDefinition;
extern __declspec (package) const GUID DIID_ksCutRotatedDefinition;
extern __declspec (package) const GUID DIID_ksRotatedSurfaceDefinition;
extern __declspec (package) const GUID DIID_ksSketchDefinition;
extern __declspec (package) const GUID DIID_ksRasterFormatParam;
extern __declspec (package) const GUID DIID_ksAdditionFormatParam;
extern __declspec (package) const GUID DIID_ksConstraintParam;
extern __declspec (package) const GUID DIID_ksImportedSurfaceDefinition;
extern __declspec (package) const GUID DIID_ksFaceCollection;
extern __declspec (package) const GUID DIID_ksVertexDefinition;
extern __declspec (package) const GUID DIID_ksTessellation;
extern __declspec (package) const GUID DIID_ksFacet;
extern __declspec (package) const GUID DIID_ksMeasurer;
extern __declspec (package) const GUID DIID_ksBodyCollection;
extern __declspec (package) const GUID DIID_ksBody;
extern __declspec (package) const GUID DIID_ksSurface;
extern __declspec (package) const GUID DIID_ksEdgeCollection;
extern __declspec (package) const GUID DIID_ksOrientedEdge;
extern __declspec (package) const GUID DIID_ksOrientedEdgeCollection;
extern __declspec (package) const GUID DIID_ksLoop;
extern __declspec (package) const GUID DIID_ksLoopCollection;
extern __declspec (package) const GUID DIID_ksCurve3D;
extern __declspec (package) const GUID DIID_ksLineSeg3dParam;
extern __declspec (package) const GUID DIID_ksCircle3dParam;
extern __declspec (package) const GUID DIID_ksEllipse3dParam;
extern __declspec (package) const GUID DIID_ksPlaneParam;
extern __declspec (package) const GUID DIID_ksConeParam;
extern __declspec (package) const GUID DIID_ksCylinderParam;
extern __declspec (package) const GUID DIID_ksSphereParam;
extern __declspec (package) const GUID DIID_ksTorusParam;
extern __declspec (package) const GUID DIID_ksNurbsPoint3dParam;
extern __declspec (package) const GUID DIID_ksNurbsSurfaceParam;
extern __declspec (package) const GUID DIID_ksNurbs3dParam;
extern __declspec (package) const GUID DIID_ksNurbsKnotCollection;
extern __declspec (package) const GUID DIID_ksNurbsPoint3dCollCollection;
extern __declspec (package) const GUID DIID_ksNurbsPoint3dCollection;
extern __declspec (package) const GUID DIID_ksViewProjection;
extern __declspec (package) const GUID DIID_ksViewProjectionCollection;
extern __declspec (package) const GUID DIID_ksSelectionMng;
extern __declspec (package) const GUID DIID_ksChooseMng;
extern __declspec (package) const GUID DIID_ksArc3dParam;
extern __declspec (package) const GUID DIID_ksTreeNodeParam;
extern __declspec (package) const GUID DIID_ksAssociationViewParam;
extern __declspec (package) const GUID DIID_ksViewColorParam;
extern __declspec (package) const GUID DIID_ksAxisLineParam;
extern __declspec (package) const GUID DIID_ksTextDocumentParam;
extern __declspec (package) const GUID DIID_ksRemoteElementParam;
extern __declspec (package) const GUID DIID_ksDeletedCopyCollection;
extern __declspec (package) const GUID DIID_ksCopyObjectParam;
extern __declspec (package) const GUID DIID_ksThreadDefinition;
extern __declspec (package) const GUID DIID_ksOverlapObjectOptions;
extern __declspec (package) const GUID DIID_ksObjectsFilter3D;
extern __declspec (package) const GUID DIID_ksParametrizationParam;
extern __declspec (package) const GUID DIID_ksMacro3DDefinition;
extern __declspec (package) const GUID DIID_ksAxisConefaceDefinition;
extern __declspec (package) const GUID DIID_ksUnionComponentsDefinition;
extern __declspec (package) const GUID DIID_ksMoldCavityDefinition;
extern __declspec (package) const GUID DIID_ksCoordinate3dCollection;
extern __declspec (package) const GUID DIID_ksIntersectionResult;
extern __declspec (package) const GUID DIID_ksPlaneMiddleDefinition;
extern __declspec (package) const GUID DIID_ksControlPointDefinition;
extern __declspec (package) const GUID DIID_ksConjunctivePointDefinition;
extern __declspec (package) const GUID DIID_ksChooseBodies;
extern __declspec (package) const GUID DIID_ksAggregateDefinition;
extern __declspec (package) const GUID DIID_ksChangeLeaderParam;
extern __declspec (package) const GUID CLSID_App;
extern __declspec (package) const GUID CLSID_Object2DNotifyResult;
extern __declspec (package) const GUID CLSID_FeatureCollection;
extern __declspec (package) const GUID CLSID_placement;
extern __declspec (package) const GUID CLSID_Object3DNotifyResult;
extern __declspec (package) const GUID CLSID_Document3DNotifyResult;
extern __declspec (package) const GUID CLSID_Document2D;
extern __declspec (package) const GUID CLSID_SpecRoughParam;
extern __declspec (package) const GUID CLSID_EllipseParam;
extern __declspec (package) const GUID CLSID_EllipseArcParam;
extern __declspec (package) const GUID CLSID_EllipseArcParam1;
extern __declspec (package) const GUID CLSID_EquidistantParam;
extern __declspec (package) const GUID CLSID_ParagraphParam;
extern __declspec (package) const GUID CLSID_TextItemParam;
extern __declspec (package) const GUID CLSID_TextLineParam;
extern __declspec (package) const GUID CLSID_TextItemFont;
extern __declspec (package) const GUID CLSID_CornerParam;
extern __declspec (package) const GUID CLSID_ContourParam;
extern __declspec (package) const GUID CLSID_LayerParam;
extern __declspec (package) const GUID CLSID_LineParam;
extern __declspec (package) const GUID CLSID_RegularPolygonParam;
extern __declspec (package) const GUID CLSID_RectangleParam;
extern __declspec (package) const GUID CLSID_BaseParam;
extern __declspec (package) const GUID CLSID_LtVariant;
extern __declspec (package) const GUID CLSID_UserParam;
extern __declspec (package) const GUID CLSID_MathPointParam;
extern __declspec (package) const GUID CLSID_CurvePicture;
extern __declspec (package) const GUID CLSID_CurvePattern;
extern __declspec (package) const GUID CLSID_TAN;
extern __declspec (package) const GUID CLSID_CON;
extern __declspec (package) const GUID CLSID_InertiaParam;
extern __declspec (package) const GUID CLSID_MassInertiaParam;
extern __declspec (package) const GUID CLSID_Mathematic2D;
extern __declspec (package) const GUID CLSID_DynamicArray;
extern __declspec (package) const GUID CLSID_RDimDrawingParam;
extern __declspec (package) const GUID CLSID_RDimSourceParam;
extern __declspec (package) const GUID CLSID_RDimParam;
extern __declspec (package) const GUID CLSID_LineSegParam;
extern __declspec (package) const GUID CLSID_CircleParam;
extern __declspec (package) const GUID CLSID_ArcByAngleParam;
extern __declspec (package) const GUID CLSID_ArcByPointParam;
extern __declspec (package) const GUID CLSID_PointParam;
extern __declspec (package) const GUID CLSID_HatchParam;
extern __declspec (package) const GUID CLSID_TextParam;
extern __declspec (package) const GUID CLSID_NurbsPointParam;
extern __declspec (package) const GUID CLSID_DoubleValue;
extern __declspec (package) const GUID CLSID_NurbsParam;
extern __declspec (package) const GUID CLSID_ConicArcParam;
extern __declspec (package) const GUID CLSID_CentreParam;
extern __declspec (package) const GUID CLSID_PlacementParam;
extern __declspec (package) const GUID CLSID_RasterParam;
extern __declspec (package) const GUID CLSID_PolylineParam;
extern __declspec (package) const GUID CLSID_InsertFragmentParam;
extern __declspec (package) const GUID CLSID_ViewParam;
extern __declspec (package) const GUID CLSID_LBreakDimSource;
extern __declspec (package) const GUID CLSID_BreakDimDrawing;
extern __declspec (package) const GUID CLSID_LBreakDimParam;
extern __declspec (package) const GUID CLSID_ABreakDimParam;
extern __declspec (package) const GUID CLSID_InsertFragmentParamEx;
extern __declspec (package) const GUID CLSID_BezierParam;
extern __declspec (package) const GUID CLSID_BezierPointParam;
extern __declspec (package) const GUID CLSID_DimTextParam;
extern __declspec (package) const GUID CLSID_LDimSourceParam;
extern __declspec (package) const GUID CLSID_DimDrawingParam;
extern __declspec (package) const GUID CLSID_LDimParam;
extern __declspec (package) const GUID CLSID_ADimSourceParam;
extern __declspec (package) const GUID CLSID_DimensionPartsParam;
extern __declspec (package) const GUID CLSID_ADimParam;
extern __declspec (package) const GUID CLSID_RBreakDrawingParam;
extern __declspec (package) const GUID CLSID_RBreakDimParam;
extern __declspec (package) const GUID CLSID_QualityItemParam;
extern __declspec (package) const GUID CLSID_QualityContensParam;
extern __declspec (package) const GUID CLSID_Iterator;
extern __declspec (package) const GUID CLSID_Fragment;
extern __declspec (package) const GUID CLSID_FragmentLib;
extern __declspec (package) const GUID CLSID_TechnicalDemandParam;
extern __declspec (package) const GUID CLSID_OrdinatedSourceParam;
extern __declspec (package) const GUID CLSID_OrdinatedDimParam;
extern __declspec (package) const GUID CLSID_OrdinatedDrawingParam;
extern __declspec (package) const GUID CLSID_SheetSize;
extern __declspec (package) const GUID CLSID_StandartSheet;
extern __declspec (package) const GUID CLSID_SheetPar;
extern __declspec (package) const GUID CLSID_DocumentParam;
extern __declspec (package) const GUID CLSID_DimensionsOptions;
extern __declspec (package) const GUID CLSID_SnapOptions;
extern __declspec (package) const GUID CLSID_LibraryStyleParam;
extern __declspec (package) const GUID CLSID_Stamp;
extern __declspec (package) const GUID CLSID_SheetOptions;
extern __declspec (package) const GUID CLSID_CurvePatternEx;
extern __declspec (package) const GUID CLSID_CurveStyleParam;
extern __declspec (package) const GUID CLSID_TextStyleParam;
extern __declspec (package) const GUID CLSID_HatchLineParam;
extern __declspec (package) const GUID CLSID_HatchStyleParam;
extern __declspec (package) const GUID CLSID_RectParam;
extern __declspec (package) const GUID CLSID_ShelfPar;
extern __declspec (package) const GUID CLSID_roughPar;
extern __declspec (package) const GUID CLSID_RoughParam;
extern __declspec (package) const GUID CLSID_Char255;
extern __declspec (package) const GUID CLSID_leaderParam;
extern __declspec (package) const GUID CLSID_posLeaderParam;
extern __declspec (package) const GUID CLSID_brandLeaderParam;
extern __declspec (package) const GUID CLSID_markerLeaderParam;
extern __declspec (package) const GUID CLSID_Type1;
extern __declspec (package) const GUID CLSID_Type2;
extern __declspec (package) const GUID CLSID_Type3;
extern __declspec (package) const GUID CLSID_Type5;
extern __declspec (package) const GUID CLSID_Type6;
extern __declspec (package) const GUID CLSID_phantom;
extern __declspec (package) const GUID CLSID_RequestInfo;
extern __declspec (package) const GUID CLSID_ViewPointerParam;
extern __declspec (package) const GUID CLSID_CutLineParam;
extern __declspec (package) const GUID CLSID_ToleranceBranch;
extern __declspec (package) const GUID CLSID_ToleranceParam;
extern __declspec (package) const GUID CLSID_SpcColumnParam;
extern __declspec (package) const GUID CLSID_RecordTypeAttrParam;
extern __declspec (package) const GUID CLSID_NumberTypeAttrParam;
extern __declspec (package) const GUID CLSID_SpcStyleColumnParam;
extern __declspec (package) const GUID CLSID_SpcStyleSectionParam;
extern __declspec (package) const GUID CLSID_SpcSubSectionParam;
extern __declspec (package) const GUID CLSID_SpcTuningSectionParam;
extern __declspec (package) const GUID CLSID_SpcTuningStyleParam;
extern __declspec (package) const GUID CLSID_SpcStyleParam;
extern __declspec (package) const GUID CLSID_SpcDescrParam;
extern __declspec (package) const GUID CLSID_DocAttachedSpcParam;
extern __declspec (package) const GUID CLSID_SpcObjParam;
extern __declspec (package) const GUID CLSID_LibStyle;
extern __declspec (package) const GUID CLSID_DataBaseObject;
extern __declspec (package) const GUID CLSID_SpcDocument;
extern __declspec (package) const GUID CLSID_Specification;
extern __declspec (package) const GUID CLSID_DocumentTxt;
extern __declspec (package) const GUID CLSID_AttributeTypeParam;
extern __declspec (package) const GUID CLSID_ColumnInfoParam;
extern __declspec (package) const GUID CLSID_AttributeParam;
extern __declspec (package) const GUID CLSID_Variable;
extern __declspec (package) const GUID CLSID_LibraryAttrTypeParam;
extern __declspec (package) const GUID CLSID_AttributeObject;
extern __declspec (package) const GUID CLSID_RequestInfo3D;
extern __declspec (package) const GUID CLSID_MateConstraint;
extern __declspec (package) const GUID CLSID_DefaultObject;
extern __declspec (package) const GUID CLSID_entity;
extern __declspec (package) const GUID CLSID_part;
extern __declspec (package) const GUID CLSID_Document3D;
extern __declspec (package) const GUID CLSID_ModelLibrary;
extern __declspec (package) const GUID CLSID_EntityCollection;
extern __declspec (package) const GUID CLSID_VariableCollection;
extern __declspec (package) const GUID CLSID_MateConstraintCollection;
extern __declspec (package) const GUID CLSID_PartCollection;
extern __declspec (package) const GUID CLSID_MeshPartArrayDefinition;
extern __declspec (package) const GUID CLSID_CircularPartArrayDefinition;
extern __declspec (package) const GUID CLSID_CurvePartArrayDefinition;
extern __declspec (package) const GUID CLSID_DerivativePartArrayDefinition;
extern __declspec (package) const GUID CLSID_Axis2PlanesDefinition;
extern __declspec (package) const GUID CLSID_AxisOperationsDefinition;
extern __declspec (package) const GUID CLSID_Axis2PointsDefinition;
extern __declspec (package) const GUID CLSID_AxisEdgeDefinition;
extern __declspec (package) const GUID CLSID_MeshCopyDefinition;
extern __declspec (package) const GUID CLSID_CircularCopyDefinition;
extern __declspec (package) const GUID CLSID_CurveCopyDefinition;
extern __declspec (package) const GUID CLSID_MirrorCopyDefinition;
extern __declspec (package) const GUID CLSID_MirrorCopyAllDefinition;
extern __declspec (package) const GUID CLSID_ConicSpiralDefinition;
extern __declspec (package) const GUID CLSID_CylindricSpiralDefinition;
extern __declspec (package) const GUID CLSID_PolyLineDefinition;
extern __declspec (package) const GUID CLSID_SplineDefinition;
extern __declspec (package) const GUID CLSID_faceDefinition;
extern __declspec (package) const GUID CLSID_EdgeDefinition;
extern __declspec (package) const GUID CLSID_ChamferDefinition;
extern __declspec (package) const GUID CLSID_FilletDefinition;
extern __declspec (package) const GUID CLSID_BaseExtrusionDefinition;
extern __declspec (package) const GUID CLSID_BossExtrusionDefinition;
extern __declspec (package) const GUID CLSID_CutExtrusionDefinition;
extern __declspec (package) const GUID CLSID_ExtrusionSurfaceDefinition;
extern __declspec (package) const GUID CLSID_BaseLoftDefinition;
extern __declspec (package) const GUID CLSID_BossLoftDefinition;
extern __declspec (package) const GUID CLSID_CutLoftDefinition;
extern __declspec (package) const GUID CLSID_LoftSurfaceDefinition;
extern __declspec (package) const GUID CLSID_InclineDefinition;
extern __declspec (package) const GUID CLSID_ShellDefinition;
extern __declspec (package) const GUID CLSID_BaseEvolutionDefinition;
extern __declspec (package) const GUID CLSID_BossEvolutionDefinition;
extern __declspec (package) const GUID CLSID_CutEvolutionDefinition;
extern __declspec (package) const GUID CLSID_EvolutionSurfaceDefinition;
extern __declspec (package) const GUID CLSID_RibDefinition;
extern __declspec (package) const GUID CLSID_CutByPlaneDefinition;
extern __declspec (package) const GUID CLSID_CutBySketchDefinition;
extern __declspec (package) const GUID CLSID_PlaneOffsetDefinition;
extern __declspec (package) const GUID CLSID_PlaneAngleDefinition;
extern __declspec (package) const GUID CLSID_Plane3PointsDefinition;
extern __declspec (package) const GUID CLSID_PlaneNormalToSurfaceDefinition;
extern __declspec (package) const GUID CLSID_PlaneTangentToSurfaceDefinition;
extern __declspec (package) const GUID CLSID_PlaneEdgePointDefinition;
extern __declspec (package) const GUID CLSID_PlaneParallelDefinition;
extern __declspec (package) const GUID CLSID_PlanePerpendicularDefinition;
extern __declspec (package) const GUID CLSID_PlaneLineToEdgeDefinition;
extern __declspec (package) const GUID CLSID_PlaneLineToPlaneDefinition;
extern __declspec (package) const GUID CLSID_ThinParam;
extern __declspec (package) const GUID CLSID_ExtrusionParam;
extern __declspec (package) const GUID CLSID_RotatedParam;
extern __declspec (package) const GUID CLSID_ColorParam;
extern __declspec (package) const GUID CLSID_BaseRotatedDefinition;
extern __declspec (package) const GUID CLSID_BossRotatedDefinition;
extern __declspec (package) const GUID CLSID_CutRotatedDefinition;
extern __declspec (package) const GUID CLSID_RotatedSurfaceDefinition;
extern __declspec (package) const GUID CLSID_SketchDefinition;
extern __declspec (package) const GUID CLSID_RasterFormatParam;
extern __declspec (package) const GUID CLSID_AdditionFormatParam;
extern __declspec (package) const GUID CLSID_ConstraintParam;
extern __declspec (package) const GUID CLSID_ImportedSurfaceDefinition;
extern __declspec (package) const GUID CLSID_FaceCollection;
extern __declspec (package) const GUID CLSID_VertexDefinition;
extern __declspec (package) const GUID CLSID_Feature;
extern __declspec (package) const GUID CLSID_Tessellation;
extern __declspec (package) const GUID CLSID_facet;
extern __declspec (package) const GUID CLSID_Measurer;
extern __declspec (package) const GUID CLSID_BodyCollection;
extern __declspec (package) const GUID CLSID_body;
extern __declspec (package) const GUID CLSID_Surface;
extern __declspec (package) const GUID CLSID_EdgeCollection;
extern __declspec (package) const GUID CLSID_OrientedEdge;
extern __declspec (package) const GUID CLSID_OrientedEdgeCollection;
extern __declspec (package) const GUID CLSID_Loop;
extern __declspec (package) const GUID CLSID_LoopCollection;
extern __declspec (package) const GUID CLSID_Curve3D;
extern __declspec (package) const GUID CLSID_LineSeg3dParam;
extern __declspec (package) const GUID CLSID_Circle3dParam;
extern __declspec (package) const GUID CLSID_Ellipse3dParam;
extern __declspec (package) const GUID CLSID_PlaneParam;
extern __declspec (package) const GUID CLSID_ConeParam;
extern __declspec (package) const GUID CLSID_CylinderParam;
extern __declspec (package) const GUID CLSID_SphereParam;
extern __declspec (package) const GUID CLSID_TorusParam;
extern __declspec (package) const GUID CLSID_NurbsPoint3dParam;
extern __declspec (package) const GUID CLSID_NurbsSurfaceParam;
extern __declspec (package) const GUID CLSID_Nurbs3dParam;
extern __declspec (package) const GUID CLSID_NurbsKnotCollection;
extern __declspec (package) const GUID CLSID_NurbsPoint3dCollCollection;
extern __declspec (package) const GUID CLSID_NurbsPoint3dCollection;
extern __declspec (package) const GUID CLSID_ViewProjection;
extern __declspec (package) const GUID CLSID_ViewProjectionCollection;
extern __declspec (package) const GUID CLSID_SelectionMng;
extern __declspec (package) const GUID CLSID_ChooseMng;
extern __declspec (package) const GUID CLSID_Arc3dParam;
extern __declspec (package) const GUID CLSID_TreeNodeParam;
extern __declspec (package) const GUID CLSID_AssociationViewParam;
extern __declspec (package) const GUID CLSID_ViewColorParam;
extern __declspec (package) const GUID CLSID_AxisLineParam;
extern __declspec (package) const GUID CLSID_TextDocumentParam;
extern __declspec (package) const GUID CLSID_RemoteElementParam;
extern __declspec (package) const GUID CLSID_DeletedCopyCollection;
extern __declspec (package) const GUID CLSID_CopyObjectParam;
extern __declspec (package) const GUID CLSID_ThreadDefinition;
extern __declspec (package) const GUID CLSID_OverlapObjectOptions;
extern __declspec (package) const GUID CLSID_Attribute3D;
extern __declspec (package) const GUID CLSID_Attribute3DCollection;
extern __declspec (package) const GUID CLSID_ComponentPositioner;
extern __declspec (package) const GUID CLSID_ObjectsFilter3D;
extern __declspec (package) const GUID CLSID_ParametrizationParam;
extern __declspec (package) const GUID CLSID_Macro3DDefinition;
extern __declspec (package) const GUID CLSID_AxisConefaceDefinition;
extern __declspec (package) const GUID CLSID_UnionComponentsDefinition;
extern __declspec (package) const GUID CLSID_MoldCavityDefinition;
extern __declspec (package) const GUID CLSID_Coordinate3dCollection;
extern __declspec (package) const GUID CLSID_IntersectionResult;
extern __declspec (package) const GUID CLSID_PlaneMiddleDefinition;
extern __declspec (package) const GUID CLSID_ControlPointDefinition;
extern __declspec (package) const GUID CLSID_ConjunctivePointDefinition;
extern __declspec (package) const GUID CLSID_ChooseBodies;
extern __declspec (package) const GUID CLSID_AggregateDefinition;
extern __declspec (package) const GUID CLSID_ChangeLeaderParam;
extern __declspec (package) const GUID DIID_ksChooseParts;
extern __declspec (package) const GUID CLSID_ChooseParts;
extern __declspec (package) const GUID DIID_ksBodyParts;

// *********************************************************************//
// Forward declaration of types defined in TypeLibrary                    
// *********************************************************************//
interface DECLSPEC_UUID("{E36BC97C-39D6-4402-9C25-C7008A217E02}") KompasObject;
typedef TComInterface<KompasObject, &DIID_KompasObject> KompasObjectPtr;
interface DECLSPEC_UUID("{AF4E160D-5C89-4F21-B0F2-D53397BDAF78}") ksDocument2D;
typedef TComInterface<ksDocument2D, &DIID_ksDocument2D> ksDocument2DPtr;
interface DECLSPEC_UUID("{2E29C343-C521-4B0F-B37D-587D0347B7BA}") ksObject2DNotify;
typedef TComInterface<ksObject2DNotify, &DIID_ksObject2DNotify> ksObject2DNotifyPtr;
interface DECLSPEC_UUID("{A421368A-34B6-4DDF-9A52-73B3488EE83F}") ksSelectionMngNotify;
typedef TComInterface<ksSelectionMngNotify, &DIID_ksSelectionMngNotify> ksSelectionMngNotifyPtr;
interface DECLSPEC_UUID("{1FE1EB28-CD28-4700-8E46-25CCFE9C0EC8}") ksObject2DNotifyResult;
typedef TComInterface<ksObject2DNotifyResult, &DIID_ksObject2DNotifyResult> ksObject2DNotifyResultPtr;
interface DECLSPEC_UUID("{13F0BE95-3361-4AD9-90AF-D935EA64A127}") ksDocument2DNotify;
typedef TComInterface<ksDocument2DNotify, &DIID_ksDocument2DNotify> ksDocument2DNotifyPtr;
interface DECLSPEC_UUID("{111CEFE1-A0A7-11D6-95CE-00C0262D30E3}") ksDocument3D;
typedef TComInterface<ksDocument3D, &DIID_ksDocument3D> ksDocument3DPtr;
interface DECLSPEC_UUID("{B6C1BCFD-68DA-4A0A-A95C-296084C6A01A}") ksDocument3DNotify;
typedef TComInterface<ksDocument3DNotify, &DIID_ksDocument3DNotify> ksDocument3DNotifyPtr;
interface DECLSPEC_UUID("{508A0CCA-9D74-11D6-95CE-00C0262D30E3}") ksEntity;
typedef TComInterface<ksEntity, &DIID_ksEntity> ksEntityPtr;
interface DECLSPEC_UUID("{EB61A981-F63E-47E1-BEE8-2D1612C78E78}") ksAttribute3DCollection;
typedef TComInterface<ksAttribute3DCollection, &DIID_ksAttribute3DCollection> ksAttribute3DCollectionPtr;
interface DECLSPEC_UUID("{3EEB2B43-56FF-49C0-AFCF-69E990A7D84C}") ksAttribute3D;
typedef TComInterface<ksAttribute3D, &DIID_ksAttribute3D> ksAttribute3DPtr;
interface DECLSPEC_UUID("{CE6A46FF-02B4-4C7E-AF50-3F3707C8B122}") ksFeatureCollection;
typedef TComInterface<ksFeatureCollection, &DIID_ksFeatureCollection> ksFeatureCollectionPtr;
interface DECLSPEC_UUID("{088BF9A8-37D3-4B15-A7CA-8C52FF1DBC41}") ksFeature;
typedef TComInterface<ksFeature, &DIID_ksFeature> ksFeaturePtr;
interface DECLSPEC_UUID("{B0170141-C02C-11D6-8734-00C0262CDD2C}") ksEntityCollection;
typedef TComInterface<ksEntityCollection, &DIID_ksEntityCollection> ksEntityCollectionPtr;
interface DECLSPEC_UUID("{508A0CCD-9D74-11D6-95CE-00C0262D30E3}") ksPart;
typedef TComInterface<ksPart, &DIID_ksPart> ksPartPtr;
interface DECLSPEC_UUID("{BFA024B6-679E-4A95-B6C2-1EA47A7CD0E9}") ksObject3DNotify;
typedef TComInterface<ksObject3DNotify, &DIID_ksObject3DNotify> ksObject3DNotifyPtr;
interface DECLSPEC_UUID("{9C3ECC92-E72F-4892-8921-7886F34CA9AD}") ksObject3DNotifyResult;
typedef TComInterface<ksObject3DNotifyResult, &DIID_ksObject3DNotifyResult> ksObject3DNotifyResultPtr;
interface DECLSPEC_UUID("{2DFACC64-C4A4-11D6-8734-00C0262CDD2C}") ksPlacement;
typedef TComInterface<ksPlacement, &DIID_ksPlacement> ksPlacementPtr;
interface DECLSPEC_UUID("{508B5962-DF59-4CEE-8611-AD10FDF0C811}") ksComponentPositioner;
typedef TComInterface<ksComponentPositioner, &DIID_ksComponentPositioner> ksComponentPositionerPtr;
interface DECLSPEC_UUID("{C7CB743A-C59D-4C27-8CB6-971C2A393F2F}") ksKompasObjectNotify;
typedef TComInterface<ksKompasObjectNotify, &DIID_ksKompasObjectNotify> ksKompasObjectNotifyPtr;
interface DECLSPEC_UUID("{324C1A45-67AD-41FB-BE57-624F930646F1}") ksDocumentFileNotify;
typedef TComInterface<ksDocumentFileNotify, &DIID_ksDocumentFileNotify> ksDocumentFileNotifyPtr;
interface DECLSPEC_UUID("{9F88CAAA-A50F-46F4-904A-846C792FA649}") ksDocument3DNotifyResult;
typedef TComInterface<ksDocument3DNotifyResult, &DIID_ksDocument3DNotifyResult> ksDocument3DNotifyResultPtr;
interface DECLSPEC_UUID("{364521A3-94B5-11D6-8732-00C0262CDD2C}") ksSpecRoughParam;
typedef TComInterface<ksSpecRoughParam, &DIID_ksSpecRoughParam> ksSpecRoughParamPtr;
interface DECLSPEC_UUID("{364521A6-94B5-11D6-8732-00C0262CDD2C}") ksEllipseParam;
typedef TComInterface<ksEllipseParam, &DIID_ksEllipseParam> ksEllipseParamPtr;
interface DECLSPEC_UUID("{364521A9-94B5-11D6-8732-00C0262CDD2C}") ksEllipseArcParam;
typedef TComInterface<ksEllipseArcParam, &DIID_ksEllipseArcParam> ksEllipseArcParamPtr;
interface DECLSPEC_UUID("{364521AC-94B5-11D6-8732-00C0262CDD2C}") ksEllipseArcParam1;
typedef TComInterface<ksEllipseArcParam1, &DIID_ksEllipseArcParam1> ksEllipseArcParam1Ptr;
interface DECLSPEC_UUID("{364521AF-94B5-11D6-8732-00C0262CDD2C}") ksEquidistantParam;
typedef TComInterface<ksEquidistantParam, &DIID_ksEquidistantParam> ksEquidistantParamPtr;
interface DECLSPEC_UUID("{364521B2-94B5-11D6-8732-00C0262CDD2C}") ksParagraphParam;
typedef TComInterface<ksParagraphParam, &DIID_ksParagraphParam> ksParagraphParamPtr;
interface DECLSPEC_UUID("{364521B7-94B5-11D6-8732-00C0262CDD2C}") ksTextItemParam;
typedef TComInterface<ksTextItemParam, &DIID_ksTextItemParam> ksTextItemParamPtr;
interface DECLSPEC_UUID("{364521BA-94B5-11D6-8732-00C0262CDD2C}") ksTextLineParam;
typedef TComInterface<ksTextLineParam, &DIID_ksTextLineParam> ksTextLineParamPtr;
interface DECLSPEC_UUID("{364521BD-94B5-11D6-8732-00C0262CDD2C}") ksTextItemFont;
typedef TComInterface<ksTextItemFont, &DIID_ksTextItemFont> ksTextItemFontPtr;
interface DECLSPEC_UUID("{E79C2501-9584-11D6-8732-00C0262CDD2C}") ksCornerParam;
typedef TComInterface<ksCornerParam, &DIID_ksCornerParam> ksCornerParamPtr;
interface DECLSPEC_UUID("{E79C2504-9584-11D6-8732-00C0262CDD2C}") ksContourParam;
typedef TComInterface<ksContourParam, &DIID_ksContourParam> ksContourParamPtr;
interface DECLSPEC_UUID("{E79C2507-9584-11D6-8732-00C0262CDD2C}") ksLayerParam;
typedef TComInterface<ksLayerParam, &DIID_ksLayerParam> ksLayerParamPtr;
interface DECLSPEC_UUID("{E79C250A-9584-11D6-8732-00C0262CDD2C}") ksLineParam;
typedef TComInterface<ksLineParam, &DIID_ksLineParam> ksLineParamPtr;
interface DECLSPEC_UUID("{E79C250D-9584-11D6-8732-00C0262CDD2C}") ksRegularPolygonParam;
typedef TComInterface<ksRegularPolygonParam, &DIID_ksRegularPolygonParam> ksRegularPolygonParamPtr;
interface DECLSPEC_UUID("{E79C2510-9584-11D6-8732-00C0262CDD2C}") ksRectangleParam;
typedef TComInterface<ksRectangleParam, &DIID_ksRectangleParam> ksRectangleParamPtr;
interface DECLSPEC_UUID("{E79C2513-9584-11D6-8732-00C0262CDD2C}") ksBaseParam;
typedef TComInterface<ksBaseParam, &DIID_ksBaseParam> ksBaseParamPtr;
interface DECLSPEC_UUID("{E79C2516-9584-11D6-8732-00C0262CDD2C}") ksLtVariant;
typedef TComInterface<ksLtVariant, &DIID_ksLtVariant> ksLtVariantPtr;
interface DECLSPEC_UUID("{E79C2519-9584-11D6-8732-00C0262CDD2C}") ksUserParam;
typedef TComInterface<ksUserParam, &DIID_ksUserParam> ksUserParamPtr;
interface DECLSPEC_UUID("{3198E121-9585-11D6-95CE-00C0262D30E3}") ksMathPointParam;
typedef TComInterface<ksMathPointParam, &DIID_ksMathPointParam> ksMathPointParamPtr;
interface DECLSPEC_UUID("{910EC541-958D-11D6-95CE-00C0262D30E3}") ksCurvePicture;
typedef TComInterface<ksCurvePicture, &DIID_ksCurvePicture> ksCurvePicturePtr;
interface DECLSPEC_UUID("{910EC544-958D-11D6-95CE-00C0262D30E3}") ksCurvePattern;
typedef TComInterface<ksCurvePattern, &DIID_ksCurvePattern> ksCurvePatternPtr;
interface DECLSPEC_UUID("{8075EDE4-6C85-4711-8685-68FBE359D4C4}") ksTAN;
typedef TComInterface<ksTAN, &DIID_ksTAN> ksTANPtr;
interface DECLSPEC_UUID("{C175BFB8-D7D6-4325-BFDA-2A282B9D1119}") ksCON;
typedef TComInterface<ksCON, &DIID_ksCON> ksCONPtr;
interface DECLSPEC_UUID("{EA92E649-239E-4105-BBD3-AEF4817BD783}") ksInertiaParam;
typedef TComInterface<ksInertiaParam, &DIID_ksInertiaParam> ksInertiaParamPtr;
interface DECLSPEC_UUID("{283F77EB-7E2C-4F71-8B16-4D286FA4857E}") ksMassInertiaParam;
typedef TComInterface<ksMassInertiaParam, &DIID_ksMassInertiaParam> ksMassInertiaParamPtr;
interface DECLSPEC_UUID("{F2D5AE01-45DE-4496-B01B-9958CAEF5943}") ksMathematic2D;
typedef TComInterface<ksMathematic2D, &DIID_ksMathematic2D> ksMathematic2DPtr;
interface DECLSPEC_UUID("{4D91CD9A-6E02-409D-9360-CF7FEF60D31C}") ksDynamicArray;
typedef TComInterface<ksDynamicArray, &DIID_ksDynamicArray> ksDynamicArrayPtr;
interface DECLSPEC_UUID("{2A4D4542-95B3-11D6-8732-00C0262CDD2C}") ksRDimDrawingParam;
typedef TComInterface<ksRDimDrawingParam, &DIID_ksRDimDrawingParam> ksRDimDrawingParamPtr;
interface DECLSPEC_UUID("{2A4D4545-95B3-11D6-8732-00C0262CDD2C}") ksRDimSourceParam;
typedef TComInterface<ksRDimSourceParam, &DIID_ksRDimSourceParam> ksRDimSourceParamPtr;
interface DECLSPEC_UUID("{7F7D6F81-97DA-11D6-8732-00C0262CDD2C}") ksRDimParam;
typedef TComInterface<ksRDimParam, &DIID_ksRDimParam> ksRDimParamPtr;
interface DECLSPEC_UUID("{7F7D6F84-97DA-11D6-8732-00C0262CDD2C}") ksLineSegParam;
typedef TComInterface<ksLineSegParam, &DIID_ksLineSegParam> ksLineSegParamPtr;
interface DECLSPEC_UUID("{7F7D6F87-97DA-11D6-8732-00C0262CDD2C}") ksCircleParam;
typedef TComInterface<ksCircleParam, &DIID_ksCircleParam> ksCircleParamPtr;
interface DECLSPEC_UUID("{7F7D6F8A-97DA-11D6-8732-00C0262CDD2C}") ksArcByAngleParam;
typedef TComInterface<ksArcByAngleParam, &DIID_ksArcByAngleParam> ksArcByAngleParamPtr;
interface DECLSPEC_UUID("{7F7D6F8D-97DA-11D6-8732-00C0262CDD2C}") ksArcByPointParam;
typedef TComInterface<ksArcByPointParam, &DIID_ksArcByPointParam> ksArcByPointParamPtr;
interface DECLSPEC_UUID("{7F7D6F90-97DA-11D6-8732-00C0262CDD2C}") ksPointParam;
typedef TComInterface<ksPointParam, &DIID_ksPointParam> ksPointParamPtr;
interface DECLSPEC_UUID("{7F7D6F93-97DA-11D6-8732-00C0262CDD2C}") ksHatchParam;
typedef TComInterface<ksHatchParam, &DIID_ksHatchParam> ksHatchParamPtr;
interface DECLSPEC_UUID("{7F7D6F96-97DA-11D6-8732-00C0262CDD2C}") ksTextParam;
typedef TComInterface<ksTextParam, &DIID_ksTextParam> ksTextParamPtr;
interface DECLSPEC_UUID("{7F7D6F99-97DA-11D6-8732-00C0262CDD2C}") ksNurbsPointParam;
typedef TComInterface<ksNurbsPointParam, &DIID_ksNurbsPointParam> ksNurbsPointParamPtr;
interface DECLSPEC_UUID("{7F7D6F9C-97DA-11D6-8732-00C0262CDD2C}") ksDoubleValue;
typedef TComInterface<ksDoubleValue, &DIID_ksDoubleValue> ksDoubleValuePtr;
interface DECLSPEC_UUID("{7F7D6F9F-97DA-11D6-8732-00C0262CDD2C}") ksNurbsParam;
typedef TComInterface<ksNurbsParam, &DIID_ksNurbsParam> ksNurbsParamPtr;
interface DECLSPEC_UUID("{7F7D6FA2-97DA-11D6-8732-00C0262CDD2C}") ksConicArcParam;
typedef TComInterface<ksConicArcParam, &DIID_ksConicArcParam> ksConicArcParamPtr;
interface DECLSPEC_UUID("{7F7D6FA5-97DA-11D6-8732-00C0262CDD2C}") ksCentreParam;
typedef TComInterface<ksCentreParam, &DIID_ksCentreParam> ksCentreParamPtr;
interface DECLSPEC_UUID("{7F7D6FA8-97DA-11D6-8732-00C0262CDD2C}") ksPlacementParam;
typedef TComInterface<ksPlacementParam, &DIID_ksPlacementParam> ksPlacementParamPtr;
interface DECLSPEC_UUID("{7F7D6FAB-97DA-11D6-8732-00C0262CDD2C}") ksRasterParam;
typedef TComInterface<ksRasterParam, &DIID_ksRasterParam> ksRasterParamPtr;
interface DECLSPEC_UUID("{7F7D6FAE-97DA-11D6-8732-00C0262CDD2C}") ksPolylineParam;
typedef TComInterface<ksPolylineParam, &DIID_ksPolylineParam> ksPolylineParamPtr;
interface DECLSPEC_UUID("{7F7D6FB1-97DA-11D6-8732-00C0262CDD2C}") ksInsertFragmentParam;
typedef TComInterface<ksInsertFragmentParam, &DIID_ksInsertFragmentParam> ksInsertFragmentParamPtr;
interface DECLSPEC_UUID("{7F7D6FB4-97DA-11D6-8732-00C0262CDD2C}") ksViewParam;
typedef TComInterface<ksViewParam, &DIID_ksViewParam> ksViewParamPtr;
interface DECLSPEC_UUID("{7F7D6FB7-97DA-11D6-8732-00C0262CDD2C}") ksLBreakDimSource;
typedef TComInterface<ksLBreakDimSource, &DIID_ksLBreakDimSource> ksLBreakDimSourcePtr;
interface DECLSPEC_UUID("{7F7D6FBA-97DA-11D6-8732-00C0262CDD2C}") ksBreakDimDrawing;
typedef TComInterface<ksBreakDimDrawing, &DIID_ksBreakDimDrawing> ksBreakDimDrawingPtr;
interface DECLSPEC_UUID("{7F7D6FBD-97DA-11D6-8732-00C0262CDD2C}") ksLBreakDimParam;
typedef TComInterface<ksLBreakDimParam, &DIID_ksLBreakDimParam> ksLBreakDimParamPtr;
interface DECLSPEC_UUID("{7F7D6FC0-97DA-11D6-8732-00C0262CDD2C}") ksABreakDimParam;
typedef TComInterface<ksABreakDimParam, &DIID_ksABreakDimParam> ksABreakDimParamPtr;
interface DECLSPEC_UUID("{7F7D6FC3-97DA-11D6-8732-00C0262CDD2C}") ksInsertFragmentParamEx;
typedef TComInterface<ksInsertFragmentParamEx, &DIID_ksInsertFragmentParamEx> ksInsertFragmentParamExPtr;
interface DECLSPEC_UUID("{7F7D6FC6-97DA-11D6-8732-00C0262CDD2C}") ksBezierParam;
typedef TComInterface<ksBezierParam, &DIID_ksBezierParam> ksBezierParamPtr;
interface DECLSPEC_UUID("{7F7D6FC9-97DA-11D6-8732-00C0262CDD2C}") ksBezierPointParam;
typedef TComInterface<ksBezierPointParam, &DIID_ksBezierPointParam> ksBezierPointParamPtr;
interface DECLSPEC_UUID("{7F7D6FCC-97DA-11D6-8732-00C0262CDD2C}") ksDimTextParam;
typedef TComInterface<ksDimTextParam, &DIID_ksDimTextParam> ksDimTextParamPtr;
interface DECLSPEC_UUID("{7F7D6FCF-97DA-11D6-8732-00C0262CDD2C}") ksLDimSourceParam;
typedef TComInterface<ksLDimSourceParam, &DIID_ksLDimSourceParam> ksLDimSourceParamPtr;
interface DECLSPEC_UUID("{7F7D6FD2-97DA-11D6-8732-00C0262CDD2C}") ksDimDrawingParam;
typedef TComInterface<ksDimDrawingParam, &DIID_ksDimDrawingParam> ksDimDrawingParamPtr;
interface DECLSPEC_UUID("{7F7D6FD5-97DA-11D6-8732-00C0262CDD2C}") ksLDimParam;
typedef TComInterface<ksLDimParam, &DIID_ksLDimParam> ksLDimParamPtr;
interface DECLSPEC_UUID("{7F7D6FD8-97DA-11D6-8732-00C0262CDD2C}") ksADimSourceParam;
typedef TComInterface<ksADimSourceParam, &DIID_ksADimSourceParam> ksADimSourceParamPtr;
interface DECLSPEC_UUID("{7F7D6FDB-97DA-11D6-8732-00C0262CDD2C}") ksDimensionPartsParam;
typedef TComInterface<ksDimensionPartsParam, &DIID_ksDimensionPartsParam> ksDimensionPartsParamPtr;
interface DECLSPEC_UUID("{7F7D6FDE-97DA-11D6-8732-00C0262CDD2C}") ksADimParam;
typedef TComInterface<ksADimParam, &DIID_ksADimParam> ksADimParamPtr;
interface DECLSPEC_UUID("{7F7D6FE1-97DA-11D6-8732-00C0262CDD2C}") ksRBreakDrawingParam;
typedef TComInterface<ksRBreakDrawingParam, &DIID_ksRBreakDrawingParam> ksRBreakDrawingParamPtr;
interface DECLSPEC_UUID("{7F7D6FE4-97DA-11D6-8732-00C0262CDD2C}") ksRBreakDimParam;
typedef TComInterface<ksRBreakDimParam, &DIID_ksRBreakDimParam> ksRBreakDimParamPtr;
interface DECLSPEC_UUID("{7F7D6FE7-97DA-11D6-8732-00C0262CDD2C}") ksQualityItemParam;
typedef TComInterface<ksQualityItemParam, &DIID_ksQualityItemParam> ksQualityItemParamPtr;
interface DECLSPEC_UUID("{7F7D6FEA-97DA-11D6-8732-00C0262CDD2C}") ksQualityContensParam;
typedef TComInterface<ksQualityContensParam, &DIID_ksQualityContensParam> ksQualityContensParamPtr;
interface DECLSPEC_UUID("{D06C9101-98CA-11D6-8732-00C0262CDD2C}") ksIterator;
typedef TComInterface<ksIterator, &DIID_ksIterator> ksIteratorPtr;
interface DECLSPEC_UUID("{D06C9104-98CA-11D6-8732-00C0262CDD2C}") ksFragment;
typedef TComInterface<ksFragment, &DIID_ksFragment> ksFragmentPtr;
interface DECLSPEC_UUID("{D06C910A-98CA-11D6-8732-00C0262CDD2C}") ksFragmentLibrary;
typedef TComInterface<ksFragmentLibrary, &DIID_ksFragmentLibrary> ksFragmentLibraryPtr;
interface DECLSPEC_UUID("{FBCC5B81-996C-11D6-8732-00C0262CDD2C}") ksTechnicalDemandParam;
typedef TComInterface<ksTechnicalDemandParam, &DIID_ksTechnicalDemandParam> ksTechnicalDemandParamPtr;
interface DECLSPEC_UUID("{FBCC5B84-996C-11D6-8732-00C0262CDD2C}") ksOrdinatedSourceParam;
typedef TComInterface<ksOrdinatedSourceParam, &DIID_ksOrdinatedSourceParam> ksOrdinatedSourceParamPtr;
interface DECLSPEC_UUID("{FBCC5B87-996C-11D6-8732-00C0262CDD2C}") ksOrdinatedDimParam;
typedef TComInterface<ksOrdinatedDimParam, &DIID_ksOrdinatedDimParam> ksOrdinatedDimParamPtr;
interface DECLSPEC_UUID("{FBCC5B8A-996C-11D6-8732-00C0262CDD2C}") ksOrdinatedDrawingParam;
typedef TComInterface<ksOrdinatedDrawingParam, &DIID_ksOrdinatedDrawingParam> ksOrdinatedDrawingParamPtr;
interface DECLSPEC_UUID("{FBCC5B8D-996C-11D6-8732-00C0262CDD2C}") ksSheetSize;
typedef TComInterface<ksSheetSize, &DIID_ksSheetSize> ksSheetSizePtr;
interface DECLSPEC_UUID("{FBCC5B90-996C-11D6-8732-00C0262CDD2C}") ksStandartSheet;
typedef TComInterface<ksStandartSheet, &DIID_ksStandartSheet> ksStandartSheetPtr;
interface DECLSPEC_UUID("{FBCC5B93-996C-11D6-8732-00C0262CDD2C}") ksSheetPar;
typedef TComInterface<ksSheetPar, &DIID_ksSheetPar> ksSheetParPtr;
interface DECLSPEC_UUID("{FBCC5B96-996C-11D6-8732-00C0262CDD2C}") ksDocumentParam;
typedef TComInterface<ksDocumentParam, &DIID_ksDocumentParam> ksDocumentParamPtr;
interface DECLSPEC_UUID("{FBCC5B99-996C-11D6-8732-00C0262CDD2C}") ksDimensionsOptions;
typedef TComInterface<ksDimensionsOptions, &DIID_ksDimensionsOptions> ksDimensionsOptionsPtr;
interface DECLSPEC_UUID("{FBCC5B9C-996C-11D6-8732-00C0262CDD2C}") ksSnapOptions;
typedef TComInterface<ksSnapOptions, &DIID_ksSnapOptions> ksSnapOptionsPtr;
interface DECLSPEC_UUID("{FBCC5B9F-996C-11D6-8732-00C0262CDD2C}") ksLibraryStyleParam;
typedef TComInterface<ksLibraryStyleParam, &DIID_ksLibraryStyleParam> ksLibraryStyleParamPtr;
interface DECLSPEC_UUID("{404E7D5A-A13F-4CFF-8214-FEA7012110CB}") ksStampNotify;
typedef TComInterface<ksStampNotify, &DIID_ksStampNotify> ksStampNotifyPtr;
interface DECLSPEC_UUID("{FBCC5BA5-996C-11D6-8732-00C0262CDD2C}") ksStamp;
typedef TComInterface<ksStamp, &DIID_ksStamp> ksStampPtr;
interface DECLSPEC_UUID("{FBCC5BA8-996C-11D6-8732-00C0262CDD2C}") ksSheetOptions;
typedef TComInterface<ksSheetOptions, &DIID_ksSheetOptions> ksSheetOptionsPtr;
interface DECLSPEC_UUID("{910EC549-958D-11D6-95CE-00C0262D30E3}") ksCurvePatternEx;
typedef TComInterface<ksCurvePatternEx, &DIID_ksCurvePatternEx> ksCurvePatternExPtr;
interface DECLSPEC_UUID("{910EC54C-958D-11D6-95CE-00C0262D30E3}") ksCurveStyleParam;
typedef TComInterface<ksCurveStyleParam, &DIID_ksCurveStyleParam> ksCurveStyleParamPtr;
interface DECLSPEC_UUID("{3F715E24-97D9-11D6-95CE-00C0262D30E3}") ksTextStyleParam;
typedef TComInterface<ksTextStyleParam, &DIID_ksTextStyleParam> ksTextStyleParamPtr;
interface DECLSPEC_UUID("{3F715E27-97D9-11D6-95CE-00C0262D30E3}") ksHatchLineParam;
typedef TComInterface<ksHatchLineParam, &DIID_ksHatchLineParam> ksHatchLineParamPtr;
interface DECLSPEC_UUID("{3F715E2A-97D9-11D6-95CE-00C0262D30E3}") ksHatchStyleParam;
typedef TComInterface<ksHatchStyleParam, &DIID_ksHatchStyleParam> ksHatchStyleParamPtr;
interface DECLSPEC_UUID("{3F715E2D-97D9-11D6-95CE-00C0262D30E3}") ksRectParam;
typedef TComInterface<ksRectParam, &DIID_ksRectParam> ksRectParamPtr;
interface DECLSPEC_UUID("{3F715E30-97D9-11D6-95CE-00C0262D30E3}") ksShelfPar;
typedef TComInterface<ksShelfPar, &DIID_ksShelfPar> ksShelfParPtr;
interface DECLSPEC_UUID("{3F715E33-97D9-11D6-95CE-00C0262D30E3}") ksRoughPar;
typedef TComInterface<ksRoughPar, &DIID_ksRoughPar> ksRoughParPtr;
interface DECLSPEC_UUID("{3F715E36-97D9-11D6-95CE-00C0262D30E3}") ksRoughParam;
typedef TComInterface<ksRoughParam, &DIID_ksRoughParam> ksRoughParamPtr;
interface DECLSPEC_UUID("{3F715E39-97D9-11D6-95CE-00C0262D30E3}") ksChar255;
typedef TComInterface<ksChar255, &DIID_ksChar255> ksChar255Ptr;
interface DECLSPEC_UUID("{3F715E40-97D9-11D6-95CE-00C0262D30E3}") ksLeaderParam;
typedef TComInterface<ksLeaderParam, &DIID_ksLeaderParam> ksLeaderParamPtr;
interface DECLSPEC_UUID("{3F715E43-97D9-11D6-95CE-00C0262D30E3}") ksPosLeaderParam;
typedef TComInterface<ksPosLeaderParam, &DIID_ksPosLeaderParam> ksPosLeaderParamPtr;
interface DECLSPEC_UUID("{3F715E46-97D9-11D6-95CE-00C0262D30E3}") ksBrandLeaderParam;
typedef TComInterface<ksBrandLeaderParam, &DIID_ksBrandLeaderParam> ksBrandLeaderParamPtr;
interface DECLSPEC_UUID("{9AF8E341-98A0-11D6-95CE-00C0262D30E3}") ksMarkerLeaderParam;
typedef TComInterface<ksMarkerLeaderParam, &DIID_ksMarkerLeaderParam> ksMarkerLeaderParamPtr;
interface DECLSPEC_UUID("{9AF8E344-98A0-11D6-95CE-00C0262D30E3}") ksType1;
typedef TComInterface<ksType1, &DIID_ksType1> ksType1Ptr;
interface DECLSPEC_UUID("{9AF8E347-98A0-11D6-95CE-00C0262D30E3}") ksType2;
typedef TComInterface<ksType2, &DIID_ksType2> ksType2Ptr;
interface DECLSPEC_UUID("{9AF8E34A-98A0-11D6-95CE-00C0262D30E3}") ksType3;
typedef TComInterface<ksType3, &DIID_ksType3> ksType3Ptr;
interface DECLSPEC_UUID("{9AF8E34D-98A0-11D6-95CE-00C0262D30E3}") ksType5;
typedef TComInterface<ksType5, &DIID_ksType5> ksType5Ptr;
interface DECLSPEC_UUID("{9AF8E350-98A0-11D6-95CE-00C0262D30E3}") ksType6;
typedef TComInterface<ksType6, &DIID_ksType6> ksType6Ptr;
interface DECLSPEC_UUID("{9AF8E353-98A0-11D6-95CE-00C0262D30E3}") ksPhantom;
typedef TComInterface<ksPhantom, &DIID_ksPhantom> ksPhantomPtr;
interface DECLSPEC_UUID("{9AF8E356-98A0-11D6-95CE-00C0262D30E3}") ksRequestInfo;
typedef TComInterface<ksRequestInfo, &DIID_ksRequestInfo> ksRequestInfoPtr;
interface DECLSPEC_UUID("{CD1C0144-98DC-11D6-95CE-00C0262D30E3}") ksViewPointerParam;
typedef TComInterface<ksViewPointerParam, &DIID_ksViewPointerParam> ksViewPointerParamPtr;
interface DECLSPEC_UUID("{4FD7CE81-9968-11D6-95CE-00C0262D30E3}") ksCutLineParam;
typedef TComInterface<ksCutLineParam, &DIID_ksCutLineParam> ksCutLineParamPtr;
interface DECLSPEC_UUID("{4FD7CE84-9968-11D6-95CE-00C0262D30E3}") ksToleranceBranch;
typedef TComInterface<ksToleranceBranch, &DIID_ksToleranceBranch> ksToleranceBranchPtr;
interface DECLSPEC_UUID("{4FD7CE87-9968-11D6-95CE-00C0262D30E3}") ksToleranceParam;
typedef TComInterface<ksToleranceParam, &DIID_ksToleranceParam> ksToleranceParamPtr;
interface DECLSPEC_UUID("{4FD7CE8A-9968-11D6-95CE-00C0262D30E3}") ksSpcColumnParam;
typedef TComInterface<ksSpcColumnParam, &DIID_ksSpcColumnParam> ksSpcColumnParamPtr;
interface DECLSPEC_UUID("{4FD7CE8D-9968-11D6-95CE-00C0262D30E3}") ksRecordTypeAttrParam;
typedef TComInterface<ksRecordTypeAttrParam, &DIID_ksRecordTypeAttrParam> ksRecordTypeAttrParamPtr;
interface DECLSPEC_UUID("{4FD7CE90-9968-11D6-95CE-00C0262D30E3}") ksNumberTypeAttrParam;
typedef TComInterface<ksNumberTypeAttrParam, &DIID_ksNumberTypeAttrParam> ksNumberTypeAttrParamPtr;
interface DECLSPEC_UUID("{4FD7CE93-9968-11D6-95CE-00C0262D30E3}") ksSpcStyleColumnParam;
typedef TComInterface<ksSpcStyleColumnParam, &DIID_ksSpcStyleColumnParam> ksSpcStyleColumnParamPtr;
interface DECLSPEC_UUID("{4FD7CE96-9968-11D6-95CE-00C0262D30E3}") ksSpcStyleSectionParam;
typedef TComInterface<ksSpcStyleSectionParam, &DIID_ksSpcStyleSectionParam> ksSpcStyleSectionParamPtr;
interface DECLSPEC_UUID("{4FD7CE99-9968-11D6-95CE-00C0262D30E3}") ksSpcSubSectionParam;
typedef TComInterface<ksSpcSubSectionParam, &DIID_ksSpcSubSectionParam> ksSpcSubSectionParamPtr;
interface DECLSPEC_UUID("{4FD7CE9C-9968-11D6-95CE-00C0262D30E3}") ksSpcTuningSectionParam;
typedef TComInterface<ksSpcTuningSectionParam, &DIID_ksSpcTuningSectionParam> ksSpcTuningSectionParamPtr;
interface DECLSPEC_UUID("{4FD7CE9F-9968-11D6-95CE-00C0262D30E3}") ksSpcTuningStyleParam;
typedef TComInterface<ksSpcTuningStyleParam, &DIID_ksSpcTuningStyleParam> ksSpcTuningStyleParamPtr;
interface DECLSPEC_UUID("{4FD7CEA2-9968-11D6-95CE-00C0262D30E3}") ksSpcStyleParam;
typedef TComInterface<ksSpcStyleParam, &DIID_ksSpcStyleParam> ksSpcStyleParamPtr;
interface DECLSPEC_UUID("{4FD7CEA5-9968-11D6-95CE-00C0262D30E3}") ksSpcDescrParam;
typedef TComInterface<ksSpcDescrParam, &DIID_ksSpcDescrParam> ksSpcDescrParamPtr;
interface DECLSPEC_UUID("{4FD7CEA8-9968-11D6-95CE-00C0262D30E3}") ksDocAttachedSpcParam;
typedef TComInterface<ksDocAttachedSpcParam, &DIID_ksDocAttachedSpcParam> ksDocAttachedSpcParamPtr;
interface DECLSPEC_UUID("{4FD7CEAB-9968-11D6-95CE-00C0262D30E3}") ksSpcObjParam;
typedef TComInterface<ksSpcObjParam, &DIID_ksSpcObjParam> ksSpcObjParamPtr;
interface DECLSPEC_UUID("{4FD7CEAE-9968-11D6-95CE-00C0262D30E3}") ksLibStyle;
typedef TComInterface<ksLibStyle, &DIID_ksLibStyle> ksLibStylePtr;
interface DECLSPEC_UUID("{0981CD01-9A49-11D6-8732-00C0262CDD2C}") ksDataBaseObject;
typedef TComInterface<ksDataBaseObject, &DIID_ksDataBaseObject> ksDataBaseObjectPtr;
interface DECLSPEC_UUID("{1BD030F4-4058-4A86-9F4F-1AEEF8BE8D23}") ksSpcDocumentNotify;
typedef TComInterface<ksSpcDocumentNotify, &DIID_ksSpcDocumentNotify> ksSpcDocumentNotifyPtr;
interface DECLSPEC_UUID("{51E74521-9A3A-11D6-95CE-00C0262D30E3}") ksSpcDocument;
typedef TComInterface<ksSpcDocument, &DIID_ksSpcDocument> ksSpcDocumentPtr;
interface DECLSPEC_UUID("{AC5004D1-C240-41FC-AB84-7EB5C793AE7F}") ksSpcObjectNotify;
typedef TComInterface<ksSpcObjectNotify, &DIID_ksSpcObjectNotify> ksSpcObjectNotifyPtr;
interface DECLSPEC_UUID("{0331AB4B-F25B-4EB9-9C8A-BFEA414E3822}") ksSpecificationNotify;
typedef TComInterface<ksSpecificationNotify, &DIID_ksSpecificationNotify> ksSpecificationNotifyPtr;
interface DECLSPEC_UUID("{51E74524-9A3A-11D6-95CE-00C0262D30E3}") ksSpecification;
typedef TComInterface<ksSpecification, &DIID_ksSpecification> ksSpecificationPtr;
interface DECLSPEC_UUID("{74D745F1-9A3A-11D6-95CE-00C0262D30E3}") ksDocumentTxt;
typedef TComInterface<ksDocumentTxt, &DIID_ksDocumentTxt> ksDocumentTxtPtr;
interface DECLSPEC_UUID("{CC26DA61-9B22-11D6-95CE-00C0262D30E3}") ksAttributeTypeParam;
typedef TComInterface<ksAttributeTypeParam, &DIID_ksAttributeTypeParam> ksAttributeTypeParamPtr;
interface DECLSPEC_UUID("{CE0D05E1-9B2A-11D6-95CE-00C0262D30E3}") ksColumnInfoParam;
typedef TComInterface<ksColumnInfoParam, &DIID_ksColumnInfoParam> ksColumnInfoParamPtr;
interface DECLSPEC_UUID("{CE0D05E4-9B2A-11D6-95CE-00C0262D30E3}") ksAttributeParam;
typedef TComInterface<ksAttributeParam, &DIID_ksAttributeParam> ksAttributeParamPtr;
interface DECLSPEC_UUID("{508A0CC1-9D74-11D6-95CE-00C0262D30E3}") ksVariable;
typedef TComInterface<ksVariable, &DIID_ksVariable> ksVariablePtr;
interface DECLSPEC_UUID("{FA93AA21-9B3D-11D6-95CE-00C0262D30E3}") ksLibraryAttrTypeParam;
typedef TComInterface<ksLibraryAttrTypeParam, &DIID_ksLibraryAttrTypeParam> ksLibraryAttrTypeParamPtr;
interface DECLSPEC_UUID("{FA93AA24-9B3D-11D6-95CE-00C0262D30E3}") ksAttributeObject;
typedef TComInterface<ksAttributeObject, &DIID_ksAttributeObject> ksAttributeObjectPtr;
interface DECLSPEC_UUID("{E9807824-9D55-11D6-95CE-00C0262D30E3}") ksRequestInfo3D;
typedef TComInterface<ksRequestInfo3D, &DIID_ksRequestInfo3D> ksRequestInfo3DPtr;
interface DECLSPEC_UUID("{508A0CC4-9D74-11D6-95CE-00C0262D30E3}") ksMateConstraint;
typedef TComInterface<ksMateConstraint, &DIID_ksMateConstraint> ksMateConstraintPtr;
interface DECLSPEC_UUID("{508A0CC7-9D74-11D6-95CE-00C0262D30E3}") ksDefaultObject;
typedef TComInterface<ksDefaultObject, &DIID_ksDefaultObject> ksDefaultObjectPtr;
interface DECLSPEC_UUID("{111CEFE4-A0A7-11D6-95CE-00C0262D30E3}") ksModelLibrary;
typedef TComInterface<ksModelLibrary, &DIID_ksModelLibrary> ksModelLibraryPtr;
interface DECLSPEC_UUID("{03CEAC81-C0B8-11D6-8734-00C0262CDD2C}") ksVariableCollection;
typedef TComInterface<ksVariableCollection, &DIID_ksVariableCollection> ksVariableCollectionPtr;
interface DECLSPEC_UUID("{03CEAC84-C0B8-11D6-8734-00C0262CDD2C}") ksMateConstraintCollection;
typedef TComInterface<ksMateConstraintCollection, &DIID_ksMateConstraintCollection> ksMateConstraintCollectionPtr;
interface DECLSPEC_UUID("{03CEAC87-C0B8-11D6-8734-00C0262CDD2C}") ksPartCollection;
typedef TComInterface<ksPartCollection, &DIID_ksPartCollection> ksPartCollectionPtr;
interface DECLSPEC_UUID("{E6E78D61-C0FA-11D6-8734-00C0262CDD2C}") ksMeshPartArrayDefinition;
typedef TComInterface<ksMeshPartArrayDefinition, &DIID_ksMeshPartArrayDefinition> ksMeshPartArrayDefinitionPtr;
interface DECLSPEC_UUID("{DDD05143-C180-11D6-8734-00C0262CDD2C}") ksCircularPartArrayDefinition;
typedef TComInterface<ksCircularPartArrayDefinition, &DIID_ksCircularPartArrayDefinition> ksCircularPartArrayDefinitionPtr;
interface DECLSPEC_UUID("{DDD05146-C180-11D6-8734-00C0262CDD2C}") ksCurvePartArrayDefinition;
typedef TComInterface<ksCurvePartArrayDefinition, &DIID_ksCurvePartArrayDefinition> ksCurvePartArrayDefinitionPtr;
interface DECLSPEC_UUID("{DDD05149-C180-11D6-8734-00C0262CDD2C}") ksDerivativePartArrayDefinition;
typedef TComInterface<ksDerivativePartArrayDefinition, &DIID_ksDerivativePartArrayDefinition> ksDerivativePartArrayDefinitionPtr;
interface DECLSPEC_UUID("{0307BB81-C193-11D6-8734-00C0262CDD2C}") ksAxis2PlanesDefinition;
typedef TComInterface<ksAxis2PlanesDefinition, &DIID_ksAxis2PlanesDefinition> ksAxis2PlanesDefinitionPtr;
interface DECLSPEC_UUID("{0307BB84-C193-11D6-8734-00C0262CDD2C}") ksAxisOperationsDefinition;
typedef TComInterface<ksAxisOperationsDefinition, &DIID_ksAxisOperationsDefinition> ksAxisOperationsDefinitionPtr;
interface DECLSPEC_UUID("{0307BB87-C193-11D6-8734-00C0262CDD2C}") ksAxis2PointsDefinition;
typedef TComInterface<ksAxis2PointsDefinition, &DIID_ksAxis2PointsDefinition> ksAxis2PointsDefinitionPtr;
interface DECLSPEC_UUID("{0307BB8A-C193-11D6-8734-00C0262CDD2C}") ksAxisEdgeDefinition;
typedef TComInterface<ksAxisEdgeDefinition, &DIID_ksAxisEdgeDefinition> ksAxisEdgeDefinitionPtr;
interface DECLSPEC_UUID("{0307BB8D-C193-11D6-8734-00C0262CDD2C}") ksMeshCopyDefinition;
typedef TComInterface<ksMeshCopyDefinition, &DIID_ksMeshCopyDefinition> ksMeshCopyDefinitionPtr;
interface DECLSPEC_UUID("{0307BB90-C193-11D6-8734-00C0262CDD2C}") ksCircularCopyDefinition;
typedef TComInterface<ksCircularCopyDefinition, &DIID_ksCircularCopyDefinition> ksCircularCopyDefinitionPtr;
interface DECLSPEC_UUID("{0307BB93-C193-11D6-8734-00C0262CDD2C}") ksCurveCopyDefinition;
typedef TComInterface<ksCurveCopyDefinition, &DIID_ksCurveCopyDefinition> ksCurveCopyDefinitionPtr;
interface DECLSPEC_UUID("{0307BB96-C193-11D6-8734-00C0262CDD2C}") ksMirrorCopyDefinition;
typedef TComInterface<ksMirrorCopyDefinition, &DIID_ksMirrorCopyDefinition> ksMirrorCopyDefinitionPtr;
interface DECLSPEC_UUID("{0307BB99-C193-11D6-8734-00C0262CDD2C}") ksMirrorCopyAllDefinition;
typedef TComInterface<ksMirrorCopyAllDefinition, &DIID_ksMirrorCopyAllDefinition> ksMirrorCopyAllDefinitionPtr;
interface DECLSPEC_UUID("{0307BB9C-C193-11D6-8734-00C0262CDD2C}") ksConicSpiralDefinition;
typedef TComInterface<ksConicSpiralDefinition, &DIID_ksConicSpiralDefinition> ksConicSpiralDefinitionPtr;
interface DECLSPEC_UUID("{0307BB9F-C193-11D6-8734-00C0262CDD2C}") ksCylindricSpiralDefinition;
typedef TComInterface<ksCylindricSpiralDefinition, &DIID_ksCylindricSpiralDefinition> ksCylindricSpiralDefinitionPtr;
interface DECLSPEC_UUID("{0307BBA2-C193-11D6-8734-00C0262CDD2C}") ksPolyLineDefinition;
typedef TComInterface<ksPolyLineDefinition, &DIID_ksPolyLineDefinition> ksPolyLineDefinitionPtr;
interface DECLSPEC_UUID("{1BCC4F0F-1091-41A3-895B-0608D20715B7}") ksPolyLineVertexParam;
typedef TComInterface<ksPolyLineVertexParam, &DIID_ksPolyLineVertexParam> ksPolyLineVertexParamPtr;
interface DECLSPEC_UUID("{0307BBA5-C193-11D6-8734-00C0262CDD2C}") ksSplineDefinition;
typedef TComInterface<ksSplineDefinition, &DIID_ksSplineDefinition> ksSplineDefinitionPtr;
interface DECLSPEC_UUID("{DEEFEFE1-C3E2-11D6-8734-00C0262CDD2C}") ksBaseExtrusionDefinition;
typedef TComInterface<ksBaseExtrusionDefinition, &DIID_ksBaseExtrusionDefinition> ksBaseExtrusionDefinitionPtr;
interface DECLSPEC_UUID("{DEEFEFE4-C3E2-11D6-8734-00C0262CDD2C}") ksBossExtrusionDefinition;
typedef TComInterface<ksBossExtrusionDefinition, &DIID_ksBossExtrusionDefinition> ksBossExtrusionDefinitionPtr;
interface DECLSPEC_UUID("{DEEFEFE7-C3E2-11D6-8734-00C0262CDD2C}") ksCutExtrusionDefinition;
typedef TComInterface<ksCutExtrusionDefinition, &DIID_ksCutExtrusionDefinition> ksCutExtrusionDefinitionPtr;
interface DECLSPEC_UUID("{B20E24C3-5E4A-4CDA-A1ED-6BB8EBC81A29}") ksExtrusionSurfaceDefinition;
typedef TComInterface<ksExtrusionSurfaceDefinition, &DIID_ksExtrusionSurfaceDefinition> ksExtrusionSurfaceDefinitionPtr;
interface DECLSPEC_UUID("{0307BBA8-C193-11D6-8734-00C0262CDD2C}") ksFaceDefinition;
typedef TComInterface<ksFaceDefinition, &DIID_ksFaceDefinition> ksFaceDefinitionPtr;
interface DECLSPEC_UUID("{0307BBAB-C193-11D6-8734-00C0262CDD2C}") ksEdgeDefinition;
typedef TComInterface<ksEdgeDefinition, &DIID_ksEdgeDefinition> ksEdgeDefinitionPtr;
interface DECLSPEC_UUID("{0307BBAE-C193-11D6-8734-00C0262CDD2C}") ksChamferDefinition;
typedef TComInterface<ksChamferDefinition, &DIID_ksChamferDefinition> ksChamferDefinitionPtr;
interface DECLSPEC_UUID("{0307BBB1-C193-11D6-8734-00C0262CDD2C}") ksFilletDefinition;
typedef TComInterface<ksFilletDefinition, &DIID_ksFilletDefinition> ksFilletDefinitionPtr;
interface DECLSPEC_UUID("{DEEFEFEA-C3E2-11D6-8734-00C0262CDD2C}") ksBaseLoftDefinition;
typedef TComInterface<ksBaseLoftDefinition, &DIID_ksBaseLoftDefinition> ksBaseLoftDefinitionPtr;
interface DECLSPEC_UUID("{DEEFEFED-C3E2-11D6-8734-00C0262CDD2C}") ksBossLoftDefinition;
typedef TComInterface<ksBossLoftDefinition, &DIID_ksBossLoftDefinition> ksBossLoftDefinitionPtr;
interface DECLSPEC_UUID("{DEEFEFF0-C3E2-11D6-8734-00C0262CDD2C}") ksCutLoftDefinition;
typedef TComInterface<ksCutLoftDefinition, &DIID_ksCutLoftDefinition> ksCutLoftDefinitionPtr;
interface DECLSPEC_UUID("{E04339B5-AA08-4717-8E50-90ED0E375624}") ksLoftSurfaceDefinition;
typedef TComInterface<ksLoftSurfaceDefinition, &DIID_ksLoftSurfaceDefinition> ksLoftSurfaceDefinitionPtr;
interface DECLSPEC_UUID("{DEEFEFF3-C3E2-11D6-8734-00C0262CDD2C}") ksInclineDefinition;
typedef TComInterface<ksInclineDefinition, &DIID_ksInclineDefinition> ksInclineDefinitionPtr;
interface DECLSPEC_UUID("{DEEFEFF6-C3E2-11D6-8734-00C0262CDD2C}") ksShellDefinition;
typedef TComInterface<ksShellDefinition, &DIID_ksShellDefinition> ksShellDefinitionPtr;
interface DECLSPEC_UUID("{DEEFEFF9-C3E2-11D6-8734-00C0262CDD2C}") ksBaseEvolutionDefinition;
typedef TComInterface<ksBaseEvolutionDefinition, &DIID_ksBaseEvolutionDefinition> ksBaseEvolutionDefinitionPtr;
interface DECLSPEC_UUID("{DEEFEFFC-C3E2-11D6-8734-00C0262CDD2C}") ksBossEvolutionDefinition;
typedef TComInterface<ksBossEvolutionDefinition, &DIID_ksBossEvolutionDefinition> ksBossEvolutionDefinitionPtr;
interface DECLSPEC_UUID("{DEEFEFFF-C3E2-11D6-8734-00C0262CDD2C}") ksCutEvolutionDefinition;
typedef TComInterface<ksCutEvolutionDefinition, &DIID_ksCutEvolutionDefinition> ksCutEvolutionDefinitionPtr;
interface DECLSPEC_UUID("{2BD4C79E-E2C3-42E8-8FCC-B51FFBDE9F69}") ksEvolutionSurfaceDefinition;
typedef TComInterface<ksEvolutionSurfaceDefinition, &DIID_ksEvolutionSurfaceDefinition> ksEvolutionSurfaceDefinitionPtr;
interface DECLSPEC_UUID("{DEEFF002-C3E2-11D6-8734-00C0262CDD2C}") ksRibDefinition;
typedef TComInterface<ksRibDefinition, &DIID_ksRibDefinition> ksRibDefinitionPtr;
interface DECLSPEC_UUID("{DEEFF005-C3E2-11D6-8734-00C0262CDD2C}") ksCutByPlaneDefinition;
typedef TComInterface<ksCutByPlaneDefinition, &DIID_ksCutByPlaneDefinition> ksCutByPlaneDefinitionPtr;
interface DECLSPEC_UUID("{DEEFF008-C3E2-11D6-8734-00C0262CDD2C}") ksCutBySketchDefinition;
typedef TComInterface<ksCutBySketchDefinition, &DIID_ksCutBySketchDefinition> ksCutBySketchDefinitionPtr;
interface DECLSPEC_UUID("{DEEFF00B-C3E2-11D6-8734-00C0262CDD2C}") ksPlaneOffsetDefinition;
typedef TComInterface<ksPlaneOffsetDefinition, &DIID_ksPlaneOffsetDefinition> ksPlaneOffsetDefinitionPtr;
interface DECLSPEC_UUID("{DEEFF00E-C3E2-11D6-8734-00C0262CDD2C}") ksPlaneAngleDefinition;
typedef TComInterface<ksPlaneAngleDefinition, &DIID_ksPlaneAngleDefinition> ksPlaneAngleDefinitionPtr;
interface DECLSPEC_UUID("{DEEFF011-C3E2-11D6-8734-00C0262CDD2C}") ksPlane3PointsDefinition;
typedef TComInterface<ksPlane3PointsDefinition, &DIID_ksPlane3PointsDefinition> ksPlane3PointsDefinitionPtr;
interface DECLSPEC_UUID("{DEEFF014-C3E2-11D6-8734-00C0262CDD2C}") ksPlaneNormalToSurfaceDefinition;
typedef TComInterface<ksPlaneNormalToSurfaceDefinition, &DIID_ksPlaneNormalToSurfaceDefinition> ksPlaneNormalToSurfaceDefinitionPtr;
interface DECLSPEC_UUID("{DEEFF017-C3E2-11D6-8734-00C0262CDD2C}") ksPlaneTangentToSurfaceDefinition;
typedef TComInterface<ksPlaneTangentToSurfaceDefinition, &DIID_ksPlaneTangentToSurfaceDefinition> ksPlaneTangentToSurfaceDefinitionPtr;
interface DECLSPEC_UUID("{DEEFF01A-C3E2-11D6-8734-00C0262CDD2C}") ksPlaneEdgePointDefinition;
typedef TComInterface<ksPlaneEdgePointDefinition, &DIID_ksPlaneEdgePointDefinition> ksPlaneEdgePointDefinitionPtr;
interface DECLSPEC_UUID("{DEEFF01D-C3E2-11D6-8734-00C0262CDD2C}") ksPlaneParallelDefinition;
typedef TComInterface<ksPlaneParallelDefinition, &DIID_ksPlaneParallelDefinition> ksPlaneParallelDefinitionPtr;
interface DECLSPEC_UUID("{DEEFF020-C3E2-11D6-8734-00C0262CDD2C}") ksPlanePerpendicularDefinition;
typedef TComInterface<ksPlanePerpendicularDefinition, &DIID_ksPlanePerpendicularDefinition> ksPlanePerpendicularDefinitionPtr;
interface DECLSPEC_UUID("{DEEFF023-C3E2-11D6-8734-00C0262CDD2C}") ksPlaneLineToEdgeDefinition;
typedef TComInterface<ksPlaneLineToEdgeDefinition, &DIID_ksPlaneLineToEdgeDefinition> ksPlaneLineToEdgeDefinitionPtr;
interface DECLSPEC_UUID("{DEEFF026-C3E2-11D6-8734-00C0262CDD2C}") ksPlaneLineToPlaneDefinition;
typedef TComInterface<ksPlaneLineToPlaneDefinition, &DIID_ksPlaneLineToPlaneDefinition> ksPlaneLineToPlaneDefinitionPtr;
interface DECLSPEC_UUID("{DEEFF029-C3E2-11D6-8734-00C0262CDD2C}") ksThinParam;
typedef TComInterface<ksThinParam, &DIID_ksThinParam> ksThinParamPtr;
interface DECLSPEC_UUID("{DEEFF02C-C3E2-11D6-8734-00C0262CDD2C}") ksExtrusionParam;
typedef TComInterface<ksExtrusionParam, &DIID_ksExtrusionParam> ksExtrusionParamPtr;
interface DECLSPEC_UUID("{DEEFF02F-C3E2-11D6-8734-00C0262CDD2C}") ksRotatedParam;
typedef TComInterface<ksRotatedParam, &DIID_ksRotatedParam> ksRotatedParamPtr;
interface DECLSPEC_UUID("{2DFACC61-C4A4-11D6-8734-00C0262CDD2C}") ksColorParam;
typedef TComInterface<ksColorParam, &DIID_ksColorParam> ksColorParamPtr;
interface DECLSPEC_UUID("{2DFACC67-C4A4-11D6-8734-00C0262CDD2C}") ksBaseRotatedDefinition;
typedef TComInterface<ksBaseRotatedDefinition, &DIID_ksBaseRotatedDefinition> ksBaseRotatedDefinitionPtr;
interface DECLSPEC_UUID("{2DFACC6A-C4A4-11D6-8734-00C0262CDD2C}") ksBossRotatedDefinition;
typedef TComInterface<ksBossRotatedDefinition, &DIID_ksBossRotatedDefinition> ksBossRotatedDefinitionPtr;
interface DECLSPEC_UUID("{2DFACC6D-C4A4-11D6-8734-00C0262CDD2C}") ksCutRotatedDefinition;
typedef TComInterface<ksCutRotatedDefinition, &DIID_ksCutRotatedDefinition> ksCutRotatedDefinitionPtr;
interface DECLSPEC_UUID("{FD27841D-1374-4F7F-AE8A-C2A44F89120D}") ksRotatedSurfaceDefinition;
typedef TComInterface<ksRotatedSurfaceDefinition, &DIID_ksRotatedSurfaceDefinition> ksRotatedSurfaceDefinitionPtr;
interface DECLSPEC_UUID("{2DFACC70-C4A4-11D6-8734-00C0262CDD2C}") ksSketchDefinition;
typedef TComInterface<ksSketchDefinition, &DIID_ksSketchDefinition> ksSketchDefinitionPtr;
interface DECLSPEC_UUID("{1A91A8AB-AF8C-4EE3-86D4-0A9C00123195}") ksRasterFormatParam;
typedef TComInterface<ksRasterFormatParam, &DIID_ksRasterFormatParam> ksRasterFormatParamPtr;
interface DECLSPEC_UUID("{0FD25FF9-AB0A-48F3-BAD4-F193116C0887}") ksAdditionFormatParam;
typedef TComInterface<ksAdditionFormatParam, &DIID_ksAdditionFormatParam> ksAdditionFormatParamPtr;
interface DECLSPEC_UUID("{862E250D-9DB1-47E8-8EE2-9BE2D2453D5A}") ksConstraintParam;
typedef TComInterface<ksConstraintParam, &DIID_ksConstraintParam> ksConstraintParamPtr;
interface DECLSPEC_UUID("{78A2C35E-A7DA-414E-B90A-F19998EC7BD1}") ksImportedSurfaceDefinition;
typedef TComInterface<ksImportedSurfaceDefinition, &DIID_ksImportedSurfaceDefinition> ksImportedSurfaceDefinitionPtr;
interface DECLSPEC_UUID("{0E95ACE0-0E73-406F-AE94-E8A0592E298D}") ksFaceCollection;
typedef TComInterface<ksFaceCollection, &DIID_ksFaceCollection> ksFaceCollectionPtr;
interface DECLSPEC_UUID("{A7257E73-EB61-4602-BC8B-2D00EA4AA062}") ksVertexDefinition;
typedef TComInterface<ksVertexDefinition, &DIID_ksVertexDefinition> ksVertexDefinitionPtr;
interface DECLSPEC_UUID("{B810650E-7819-485C-90D2-ADEB647AE5E2}") ksTessellation;
typedef TComInterface<ksTessellation, &DIID_ksTessellation> ksTessellationPtr;
interface DECLSPEC_UUID("{EB6AFBC0-C387-4E07-B24E-DDF2B7926A26}") ksFacet;
typedef TComInterface<ksFacet, &DIID_ksFacet> ksFacetPtr;
interface DECLSPEC_UUID("{ABC84FE5-3945-4A0B-820A-719BF4B79224}") ksMeasurer;
typedef TComInterface<ksMeasurer, &DIID_ksMeasurer> ksMeasurerPtr;
interface DECLSPEC_UUID("{CFC49C01-7653-4845-93FD-13428F5D58EC}") ksBodyCollection;
typedef TComInterface<ksBodyCollection, &DIID_ksBodyCollection> ksBodyCollectionPtr;
interface DECLSPEC_UUID("{03EFC9DD-E05A-4277-BC7C-4FD499A252DE}") ksBody;
typedef TComInterface<ksBody, &DIID_ksBody> ksBodyPtr;
interface DECLSPEC_UUID("{963CB6E1-B9BF-4234-964A-13BFE6C0282A}") ksSurface;
typedef TComInterface<ksSurface, &DIID_ksSurface> ksSurfacePtr;
interface DECLSPEC_UUID("{6096A4FD-970B-468C-815E-37CA1970A203}") ksEdgeCollection;
typedef TComInterface<ksEdgeCollection, &DIID_ksEdgeCollection> ksEdgeCollectionPtr;
interface DECLSPEC_UUID("{88C32A80-3735-4E18-A02E-9B2A8F0A90E3}") ksOrientedEdge;
typedef TComInterface<ksOrientedEdge, &DIID_ksOrientedEdge> ksOrientedEdgePtr;
interface DECLSPEC_UUID("{5CE8909D-CF3D-418F-A9B9-0A12B23916C0}") ksOrientedEdgeCollection;
typedef TComInterface<ksOrientedEdgeCollection, &DIID_ksOrientedEdgeCollection> ksOrientedEdgeCollectionPtr;
interface DECLSPEC_UUID("{22BC5C86-CF58-45E4-AA46-5E8D5A825798}") ksLoop;
typedef TComInterface<ksLoop, &DIID_ksLoop> ksLoopPtr;
interface DECLSPEC_UUID("{1BD7207E-36AA-47DF-913E-AD26DE6C16E8}") ksLoopCollection;
typedef TComInterface<ksLoopCollection, &DIID_ksLoopCollection> ksLoopCollectionPtr;
interface DECLSPEC_UUID("{7572648A-D4EE-41FE-8D74-EC7D1F91BDE2}") ksCurve3D;
typedef TComInterface<ksCurve3D, &DIID_ksCurve3D> ksCurve3DPtr;
interface DECLSPEC_UUID("{DC8F6A7B-FF16-46FF-986D-2F7E1F6B25C4}") ksLineSeg3dParam;
typedef TComInterface<ksLineSeg3dParam, &DIID_ksLineSeg3dParam> ksLineSeg3dParamPtr;
interface DECLSPEC_UUID("{82758442-C9EB-48F7-B304-083C5E64D4E0}") ksCircle3dParam;
typedef TComInterface<ksCircle3dParam, &DIID_ksCircle3dParam> ksCircle3dParamPtr;
interface DECLSPEC_UUID("{5B8082B8-6AD3-4509-826D-D23B7F613213}") ksEllipse3dParam;
typedef TComInterface<ksEllipse3dParam, &DIID_ksEllipse3dParam> ksEllipse3dParamPtr;
interface DECLSPEC_UUID("{6A6F6B95-D100-4D54-A430-70A42D342917}") ksPlaneParam;
typedef TComInterface<ksPlaneParam, &DIID_ksPlaneParam> ksPlaneParamPtr;
interface DECLSPEC_UUID("{CCFA0D95-0834-4F92-988B-6E477AD67589}") ksConeParam;
typedef TComInterface<ksConeParam, &DIID_ksConeParam> ksConeParamPtr;
interface DECLSPEC_UUID("{5D462836-CF69-4995-AB78-8C7A83D09BD7}") ksCylinderParam;
typedef TComInterface<ksCylinderParam, &DIID_ksCylinderParam> ksCylinderParamPtr;
interface DECLSPEC_UUID("{C32977F3-3CA7-4D56-8AE7-4963E6851B75}") ksSphereParam;
typedef TComInterface<ksSphereParam, &DIID_ksSphereParam> ksSphereParamPtr;
interface DECLSPEC_UUID("{FDA3B147-BAF1-4F75-99AA-39D11323EA97}") ksTorusParam;
typedef TComInterface<ksTorusParam, &DIID_ksTorusParam> ksTorusParamPtr;
interface DECLSPEC_UUID("{F1CD604D-1D26-4F6B-8F94-F112133E6162}") ksNurbsPoint3dParam;
typedef TComInterface<ksNurbsPoint3dParam, &DIID_ksNurbsPoint3dParam> ksNurbsPoint3dParamPtr;
interface DECLSPEC_UUID("{A12B63E8-9E0A-4854-B724-E18275B9FF20}") ksNurbsSurfaceParam;
typedef TComInterface<ksNurbsSurfaceParam, &DIID_ksNurbsSurfaceParam> ksNurbsSurfaceParamPtr;
interface DECLSPEC_UUID("{4DDDAEDB-2819-42D9-BDBB-4CCBC98D76DF}") ksNurbs3dParam;
typedef TComInterface<ksNurbs3dParam, &DIID_ksNurbs3dParam> ksNurbs3dParamPtr;
interface DECLSPEC_UUID("{483E9889-E1CA-4CA5-BE4E-ECB3D5CF0126}") ksNurbsKnotCollection;
typedef TComInterface<ksNurbsKnotCollection, &DIID_ksNurbsKnotCollection> ksNurbsKnotCollectionPtr;
interface DECLSPEC_UUID("{84AF9C81-1795-4631-B58A-101732262E75}") ksNurbsPoint3dCollCollection;
typedef TComInterface<ksNurbsPoint3dCollCollection, &DIID_ksNurbsPoint3dCollCollection> ksNurbsPoint3dCollCollectionPtr;
interface DECLSPEC_UUID("{3AD5E519-74E2-4D3B-B6A3-B1E81F1006F1}") ksNurbsPoint3dCollection;
typedef TComInterface<ksNurbsPoint3dCollection, &DIID_ksNurbsPoint3dCollection> ksNurbsPoint3dCollectionPtr;
interface DECLSPEC_UUID("{BF65B990-C2DC-4A12-9EB7-3E868608AF47}") ksViewProjection;
typedef TComInterface<ksViewProjection, &DIID_ksViewProjection> ksViewProjectionPtr;
interface DECLSPEC_UUID("{A174F872-C800-409E-9FB2-FF5B89D8B4B8}") ksViewProjectionCollection;
typedef TComInterface<ksViewProjectionCollection, &DIID_ksViewProjectionCollection> ksViewProjectionCollectionPtr;
interface DECLSPEC_UUID("{BE41850C-CFC5-40D4-AE49-37AA391BCF4B}") ksSelectionMng;
typedef TComInterface<ksSelectionMng, &DIID_ksSelectionMng> ksSelectionMngPtr;
interface DECLSPEC_UUID("{8F2AA755-D9D1-42A0-97BF-C92548CE7232}") ksChooseMng;
typedef TComInterface<ksChooseMng, &DIID_ksChooseMng> ksChooseMngPtr;
interface DECLSPEC_UUID("{7DCBCC76-5041-4C1E-9B33-12B1352D6D57}") ksArc3dParam;
typedef TComInterface<ksArc3dParam, &DIID_ksArc3dParam> ksArc3dParamPtr;
interface DECLSPEC_UUID("{9F8DE1DC-1268-4785-9217-1B0DD59B85FA}") ksTreeNodeParam;
typedef TComInterface<ksTreeNodeParam, &DIID_ksTreeNodeParam> ksTreeNodeParamPtr;
interface DECLSPEC_UUID("{C81EB1DA-BCB0-491A-8D22-923BF817D572}") ksAssociationViewParam;
typedef TComInterface<ksAssociationViewParam, &DIID_ksAssociationViewParam> ksAssociationViewParamPtr;
interface DECLSPEC_UUID("{5A42B962-8F78-4557-B17A-1B871F8DBDB5}") ksViewColorParam;
typedef TComInterface<ksViewColorParam, &DIID_ksViewColorParam> ksViewColorParamPtr;
interface DECLSPEC_UUID("{AFE694D7-C1E5-468F-99B0-FE4C60C49899}") ksAxisLineParam;
typedef TComInterface<ksAxisLineParam, &DIID_ksAxisLineParam> ksAxisLineParamPtr;
interface DECLSPEC_UUID("{33706D56-D085-4840-833B-435AEB00BE2A}") ksTextDocumentParam;
typedef TComInterface<ksTextDocumentParam, &DIID_ksTextDocumentParam> ksTextDocumentParamPtr;
interface DECLSPEC_UUID("{25076616-4949-455E-A45C-1B801884D825}") ksRemoteElementParam;
typedef TComInterface<ksRemoteElementParam, &DIID_ksRemoteElementParam> ksRemoteElementParamPtr;
interface DECLSPEC_UUID("{82F60797-D69C-4EB4-9F1A-24D625D5EAFA}") ksDeletedCopyCollection;
typedef TComInterface<ksDeletedCopyCollection, &DIID_ksDeletedCopyCollection> ksDeletedCopyCollectionPtr;
interface DECLSPEC_UUID("{AACAD820-7790-46EB-B17F-06AE42215ED7}") ksCopyObjectParam;
typedef TComInterface<ksCopyObjectParam, &DIID_ksCopyObjectParam> ksCopyObjectParamPtr;
interface DECLSPEC_UUID("{5DDB6B14-6F3D-431F-B62F-C5FCCAFC3632}") ksThreadDefinition;
typedef TComInterface<ksThreadDefinition, &DIID_ksThreadDefinition> ksThreadDefinitionPtr;
interface DECLSPEC_UUID("{F78E6B71-BEF3-4A4D-AE50-FE96426F6FD1}") ksOverlapObjectOptions;
typedef TComInterface<ksOverlapObjectOptions, &DIID_ksOverlapObjectOptions> ksOverlapObjectOptionsPtr;
interface DECLSPEC_UUID("{ABBA6CE0-CB4C-4A32-98B4-B639352C75BA}") ksObjectsFilter3D;
typedef TComInterface<ksObjectsFilter3D, &DIID_ksObjectsFilter3D> ksObjectsFilter3DPtr;
interface DECLSPEC_UUID("{ABBA6CE0-CB4C-4A32-98B4-B639352C75BB}") ksParametrizationParam;
typedef TComInterface<ksParametrizationParam, &DIID_ksParametrizationParam> ksParametrizationParamPtr;
interface DECLSPEC_UUID("{02556461-D088-4F00-AE61-D366082DB9BC}") ksMacro3DDefinition;
typedef TComInterface<ksMacro3DDefinition, &DIID_ksMacro3DDefinition> ksMacro3DDefinitionPtr;
interface DECLSPEC_UUID("{97337DAF-B7CD-4FB8-8E18-23F0230E5CBE}") ksAxisConefaceDefinition;
typedef TComInterface<ksAxisConefaceDefinition, &DIID_ksAxisConefaceDefinition> ksAxisConefaceDefinitionPtr;
interface DECLSPEC_UUID("{99797F89-FBA4-4582-812F-226AFB50ED7D}") ksUnionComponentsDefinition;
typedef TComInterface<ksUnionComponentsDefinition, &DIID_ksUnionComponentsDefinition> ksUnionComponentsDefinitionPtr;
interface DECLSPEC_UUID("{BE5F10F5-B198-49D9-9140-B2B91E060533}") ksMoldCavityDefinition;
typedef TComInterface<ksMoldCavityDefinition, &DIID_ksMoldCavityDefinition> ksMoldCavityDefinitionPtr;
interface DECLSPEC_UUID("{E4091969-1C4E-4959-8D93-C2421564418B}") ksCoordinate3dCollection;
typedef TComInterface<ksCoordinate3dCollection, &DIID_ksCoordinate3dCollection> ksCoordinate3dCollectionPtr;
interface DECLSPEC_UUID("{ABC7F8EE-CF07-4AA8-98A1-0DE35DB35B9E}") ksIntersectionResult;
typedef TComInterface<ksIntersectionResult, &DIID_ksIntersectionResult> ksIntersectionResultPtr;
interface DECLSPEC_UUID("{CC5E3539-5B35-46FC-AFE1-19BB0168D52F}") ksPlaneMiddleDefinition;
typedef TComInterface<ksPlaneMiddleDefinition, &DIID_ksPlaneMiddleDefinition> ksPlaneMiddleDefinitionPtr;
interface DECLSPEC_UUID("{BC4C15A4-16E9-4CFA-A33E-CC86BA2FB546}") ksControlPointDefinition;
typedef TComInterface<ksControlPointDefinition, &DIID_ksControlPointDefinition> ksControlPointDefinitionPtr;
interface DECLSPEC_UUID("{177CBAF3-87E6-4376-B6A9-669C0E661BFF}") ksConjunctivePointDefinition;
typedef TComInterface<ksConjunctivePointDefinition, &DIID_ksConjunctivePointDefinition> ksConjunctivePointDefinitionPtr;
interface DECLSPEC_UUID("{E06B18BF-D2AF-4201-99BE-B7FA9EECF7A8}") ksChooseBodies;
typedef TComInterface<ksChooseBodies, &DIID_ksChooseBodies> ksChooseBodiesPtr;
interface DECLSPEC_UUID("{44277B89-EEB4-456C-8EF9-2DC48D61EC91}") ksAggregateDefinition;
typedef TComInterface<ksAggregateDefinition, &DIID_ksAggregateDefinition> ksAggregateDefinitionPtr;
interface DECLSPEC_UUID("{391938AE-79B6-4E3B-9815-AC1A31D9EA9D}") ksChangeLeaderParam;
typedef TComInterface<ksChangeLeaderParam, &DIID_ksChangeLeaderParam> ksChangeLeaderParamPtr;
interface DECLSPEC_UUID("{08B7A093-D829-44A9-A238-2BFF31770112}") ksChooseParts;
typedef TComInterface<ksChooseParts, &DIID_ksChooseParts> ksChoosePartsPtr;
interface DECLSPEC_UUID("{1E3E9348-DB9B-4967-A62A-B412DF95146A}") ksBodyParts;
typedef TComInterface<ksBodyParts, &DIID_ksBodyParts> ksBodyPartsPtr;

// *********************************************************************//
// Declaration of CoClasses defined in Type Library                       
// (NOTE: Here we map each CoClass to its Default Interface)              
//                                                                        
// The LIBID_OF_ macro(s) map a LIBID_OF_CoClassName to the GUID of this  
// TypeLibrary. It simplifies the updating of macros when CoClass name    
// change.                                                                
// *********************************************************************//
typedef IUnknown Object2DNotify;
typedef IUnknownPtr Object2DNotifyPtr;
typedef IUnknown SelectionMngNotify;
typedef IUnknownPtr SelectionMngNotifyPtr;
typedef IUnknown Document2DNotify;
typedef IUnknownPtr Document2DNotifyPtr;
typedef IUnknown Document3DNotify;
typedef IUnknownPtr Document3DNotifyPtr;
typedef IUnknown Object3DNotify;
typedef IUnknownPtr Object3DNotifyPtr;
typedef IUnknown SpcDocumentNotify;
typedef IUnknownPtr SpcDocumentNotifyPtr;
typedef IUnknown SpcObjectNotify;
typedef IUnknownPtr SpcObjectNotifyPtr;
typedef KompasObject App;
typedef KompasObjectPtr AppPtr;
typedef ksObject2DNotifyResult Object2DNotifyResult;
typedef ksObject2DNotifyResultPtr Object2DNotifyResultPtr;
typedef ksFeatureCollection FeatureCollection;
typedef ksFeatureCollectionPtr FeatureCollectionPtr;
typedef ksPlacement placement;
typedef ksPlacementPtr placementPtr;
typedef ksObject3DNotifyResult Object3DNotifyResult;
typedef ksObject3DNotifyResultPtr Object3DNotifyResultPtr;
typedef ksDocument3DNotifyResult Document3DNotifyResult;
typedef ksDocument3DNotifyResultPtr Document3DNotifyResultPtr;
typedef ksDocument2D Document2D;
typedef ksDocument2DPtr Document2DPtr;
typedef ksSpecRoughParam SpecRoughParam;
typedef ksSpecRoughParamPtr SpecRoughParamPtr;
typedef ksEllipseParam EllipseParam;
typedef ksEllipseParamPtr EllipseParamPtr;
typedef ksEllipseArcParam EllipseArcParam;
typedef ksEllipseArcParamPtr EllipseArcParamPtr;
typedef ksEllipseArcParam1 EllipseArcParam1;
typedef ksEllipseArcParam1Ptr EllipseArcParam1Ptr;
typedef ksEquidistantParam EquidistantParam;
typedef ksEquidistantParamPtr EquidistantParamPtr;
typedef ksParagraphParam ParagraphParam;
typedef ksParagraphParamPtr ParagraphParamPtr;
typedef ksTextItemParam TextItemParam;
typedef ksTextItemParamPtr TextItemParamPtr;
typedef ksTextLineParam TextLineParam;
typedef ksTextLineParamPtr TextLineParamPtr;
typedef ksTextItemFont TextItemFont;
typedef ksTextItemFontPtr TextItemFontPtr;
typedef ksCornerParam CornerParam;
typedef ksCornerParamPtr CornerParamPtr;
typedef ksContourParam ContourParam;
typedef ksContourParamPtr ContourParamPtr;
typedef ksLayerParam LayerParam;
typedef ksLayerParamPtr LayerParamPtr;
typedef ksLineParam LineParam;
typedef ksLineParamPtr LineParamPtr;
typedef ksRegularPolygonParam RegularPolygonParam;
typedef ksRegularPolygonParamPtr RegularPolygonParamPtr;
typedef ksRectangleParam RectangleParam;
typedef ksRectangleParamPtr RectangleParamPtr;
typedef ksBaseParam BaseParam;
typedef ksBaseParamPtr BaseParamPtr;
typedef ksLtVariant LtVariant;
typedef ksLtVariantPtr LtVariantPtr;
typedef ksUserParam UserParam;
typedef ksUserParamPtr UserParamPtr;
typedef ksMathPointParam MathPointParam;
typedef ksMathPointParamPtr MathPointParamPtr;
typedef ksCurvePicture CurvePicture;
typedef ksCurvePicturePtr CurvePicturePtr;
typedef ksCurvePattern CurvePattern;
typedef ksCurvePatternPtr CurvePatternPtr;
typedef ksTAN TAN;
typedef ksTANPtr TANPtr;
typedef ksCON CON;
typedef ksCONPtr CONPtr;
typedef ksInertiaParam InertiaParam;
typedef ksInertiaParamPtr InertiaParamPtr;
typedef ksMassInertiaParam MassInertiaParam;
typedef ksMassInertiaParamPtr MassInertiaParamPtr;
typedef ksMathematic2D Mathematic2D;
typedef ksMathematic2DPtr Mathematic2DPtr;
typedef ksDynamicArray DynamicArray;
typedef ksDynamicArrayPtr DynamicArrayPtr;
typedef ksRDimDrawingParam RDimDrawingParam;
typedef ksRDimDrawingParamPtr RDimDrawingParamPtr;
typedef ksRDimSourceParam RDimSourceParam;
typedef ksRDimSourceParamPtr RDimSourceParamPtr;
typedef ksRDimParam RDimParam;
typedef ksRDimParamPtr RDimParamPtr;
typedef ksLineSegParam LineSegParam;
typedef ksLineSegParamPtr LineSegParamPtr;
typedef ksCircleParam CircleParam;
typedef ksCircleParamPtr CircleParamPtr;
typedef ksArcByAngleParam ArcByAngleParam;
typedef ksArcByAngleParamPtr ArcByAngleParamPtr;
typedef ksArcByPointParam ArcByPointParam;
typedef ksArcByPointParamPtr ArcByPointParamPtr;
typedef ksPointParam PointParam;
typedef ksPointParamPtr PointParamPtr;
typedef ksHatchParam HatchParam;
typedef ksHatchParamPtr HatchParamPtr;
typedef ksTextParam TextParam;
typedef ksTextParamPtr TextParamPtr;
typedef ksNurbsPointParam NurbsPointParam;
typedef ksNurbsPointParamPtr NurbsPointParamPtr;
typedef ksDoubleValue DoubleValue;
typedef ksDoubleValuePtr DoubleValuePtr;
typedef ksNurbsParam NurbsParam;
typedef ksNurbsParamPtr NurbsParamPtr;
typedef ksConicArcParam ConicArcParam;
typedef ksConicArcParamPtr ConicArcParamPtr;
typedef ksCentreParam CentreParam;
typedef ksCentreParamPtr CentreParamPtr;
typedef ksPlacementParam PlacementParam;
typedef ksPlacementParamPtr PlacementParamPtr;
typedef ksRasterParam RasterParam;
typedef ksRasterParamPtr RasterParamPtr;
typedef ksPolylineParam PolylineParam;
typedef ksPolylineParamPtr PolylineParamPtr;
typedef ksInsertFragmentParam InsertFragmentParam;
typedef ksInsertFragmentParamPtr InsertFragmentParamPtr;
typedef ksViewParam ViewParam;
typedef ksViewParamPtr ViewParamPtr;
typedef ksLBreakDimSource LBreakDimSource;
typedef ksLBreakDimSourcePtr LBreakDimSourcePtr;
typedef ksBreakDimDrawing BreakDimDrawing;
typedef ksBreakDimDrawingPtr BreakDimDrawingPtr;
typedef ksLBreakDimParam LBreakDimParam;
typedef ksLBreakDimParamPtr LBreakDimParamPtr;
typedef ksABreakDimParam ABreakDimParam;
typedef ksABreakDimParamPtr ABreakDimParamPtr;
typedef ksInsertFragmentParamEx InsertFragmentParamEx;
typedef ksInsertFragmentParamExPtr InsertFragmentParamExPtr;
typedef ksBezierParam BezierParam;
typedef ksBezierParamPtr BezierParamPtr;
typedef ksBezierPointParam BezierPointParam;
typedef ksBezierPointParamPtr BezierPointParamPtr;
typedef ksDimTextParam DimTextParam;
typedef ksDimTextParamPtr DimTextParamPtr;
typedef ksLDimSourceParam LDimSourceParam;
typedef ksLDimSourceParamPtr LDimSourceParamPtr;
typedef ksDimDrawingParam DimDrawingParam;
typedef ksDimDrawingParamPtr DimDrawingParamPtr;
typedef ksLDimParam LDimParam;
typedef ksLDimParamPtr LDimParamPtr;
typedef ksADimSourceParam ADimSourceParam;
typedef ksADimSourceParamPtr ADimSourceParamPtr;
typedef ksDimensionPartsParam DimensionPartsParam;
typedef ksDimensionPartsParamPtr DimensionPartsParamPtr;
typedef ksADimParam ADimParam;
typedef ksADimParamPtr ADimParamPtr;
typedef ksRBreakDrawingParam RBreakDrawingParam;
typedef ksRBreakDrawingParamPtr RBreakDrawingParamPtr;
typedef ksRBreakDimParam RBreakDimParam;
typedef ksRBreakDimParamPtr RBreakDimParamPtr;
typedef ksQualityItemParam QualityItemParam;
typedef ksQualityItemParamPtr QualityItemParamPtr;
typedef ksQualityContensParam QualityContensParam;
typedef ksQualityContensParamPtr QualityContensParamPtr;
typedef ksIterator Iterator;
typedef ksIteratorPtr IteratorPtr;
typedef ksFragment Fragment;
typedef ksFragmentPtr FragmentPtr;
typedef ksFragmentLibrary FragmentLib;
typedef ksFragmentLibraryPtr FragmentLibPtr;
typedef ksTechnicalDemandParam TechnicalDemandParam;
typedef ksTechnicalDemandParamPtr TechnicalDemandParamPtr;
typedef ksOrdinatedSourceParam OrdinatedSourceParam;
typedef ksOrdinatedSourceParamPtr OrdinatedSourceParamPtr;
typedef ksOrdinatedDimParam OrdinatedDimParam;
typedef ksOrdinatedDimParamPtr OrdinatedDimParamPtr;
typedef ksOrdinatedDrawingParam OrdinatedDrawingParam;
typedef ksOrdinatedDrawingParamPtr OrdinatedDrawingParamPtr;
typedef ksSheetSize SheetSize;
typedef ksSheetSizePtr SheetSizePtr;
typedef ksStandartSheet StandartSheet;
typedef ksStandartSheetPtr StandartSheetPtr;
typedef ksSheetPar SheetPar;
typedef ksSheetParPtr SheetParPtr;
typedef ksDocumentParam DocumentParam;
typedef ksDocumentParamPtr DocumentParamPtr;
typedef ksDimensionsOptions DimensionsOptions;
typedef ksDimensionsOptionsPtr DimensionsOptionsPtr;
typedef ksSnapOptions SnapOptions;
typedef ksSnapOptionsPtr SnapOptionsPtr;
typedef ksLibraryStyleParam LibraryStyleParam;
typedef ksLibraryStyleParamPtr LibraryStyleParamPtr;
typedef ksStamp Stamp;
typedef ksStampPtr StampPtr;
typedef ksSheetOptions SheetOptions;
typedef ksSheetOptionsPtr SheetOptionsPtr;
typedef ksCurvePatternEx CurvePatternEx;
typedef ksCurvePatternExPtr CurvePatternExPtr;
typedef ksCurveStyleParam CurveStyleParam;
typedef ksCurveStyleParamPtr CurveStyleParamPtr;
typedef ksTextStyleParam TextStyleParam;
typedef ksTextStyleParamPtr TextStyleParamPtr;
typedef ksHatchLineParam HatchLineParam;
typedef ksHatchLineParamPtr HatchLineParamPtr;
typedef ksHatchStyleParam HatchStyleParam;
typedef ksHatchStyleParamPtr HatchStyleParamPtr;
typedef ksRectParam RectParam;
typedef ksRectParamPtr RectParamPtr;
typedef ksShelfPar ShelfPar;
typedef ksShelfParPtr ShelfParPtr;
typedef ksRoughPar roughPar;
typedef ksRoughParPtr roughParPtr;
typedef ksRoughParam RoughParam;
typedef ksRoughParamPtr RoughParamPtr;
typedef ksChar255 Char255;
typedef ksChar255Ptr Char255Ptr;
typedef ksLeaderParam leaderParam;
typedef ksLeaderParamPtr leaderParamPtr;
typedef ksPosLeaderParam posLeaderParam;
typedef ksPosLeaderParamPtr posLeaderParamPtr;
typedef ksBrandLeaderParam brandLeaderParam;
typedef ksBrandLeaderParamPtr brandLeaderParamPtr;
typedef ksMarkerLeaderParam markerLeaderParam;
typedef ksMarkerLeaderParamPtr markerLeaderParamPtr;
typedef ksType1 Type1;
typedef ksType1Ptr Type1Ptr;
typedef ksType2 Type2;
typedef ksType2Ptr Type2Ptr;
typedef ksType3 Type3;
typedef ksType3Ptr Type3Ptr;
typedef ksType5 Type5;
typedef ksType5Ptr Type5Ptr;
typedef ksType6 Type6;
typedef ksType6Ptr Type6Ptr;
typedef ksPhantom phantom;
typedef ksPhantomPtr phantomPtr;
typedef ksRequestInfo RequestInfo;
typedef ksRequestInfoPtr RequestInfoPtr;
typedef ksViewPointerParam ViewPointerParam;
typedef ksViewPointerParamPtr ViewPointerParamPtr;
typedef ksCutLineParam CutLineParam;
typedef ksCutLineParamPtr CutLineParamPtr;
typedef ksToleranceBranch ToleranceBranch;
typedef ksToleranceBranchPtr ToleranceBranchPtr;
typedef ksToleranceParam ToleranceParam;
typedef ksToleranceParamPtr ToleranceParamPtr;
typedef ksSpcColumnParam SpcColumnParam;
typedef ksSpcColumnParamPtr SpcColumnParamPtr;
typedef ksRecordTypeAttrParam RecordTypeAttrParam;
typedef ksRecordTypeAttrParamPtr RecordTypeAttrParamPtr;
typedef ksNumberTypeAttrParam NumberTypeAttrParam;
typedef ksNumberTypeAttrParamPtr NumberTypeAttrParamPtr;
typedef ksSpcStyleColumnParam SpcStyleColumnParam;
typedef ksSpcStyleColumnParamPtr SpcStyleColumnParamPtr;
typedef ksSpcStyleSectionParam SpcStyleSectionParam;
typedef ksSpcStyleSectionParamPtr SpcStyleSectionParamPtr;
typedef ksSpcSubSectionParam SpcSubSectionParam;
typedef ksSpcSubSectionParamPtr SpcSubSectionParamPtr;
typedef ksSpcTuningSectionParam SpcTuningSectionParam;
typedef ksSpcTuningSectionParamPtr SpcTuningSectionParamPtr;
typedef ksSpcTuningStyleParam SpcTuningStyleParam;
typedef ksSpcTuningStyleParamPtr SpcTuningStyleParamPtr;
typedef ksSpcStyleParam SpcStyleParam;
typedef ksSpcStyleParamPtr SpcStyleParamPtr;
typedef ksSpcDescrParam SpcDescrParam;
typedef ksSpcDescrParamPtr SpcDescrParamPtr;
typedef ksDocAttachedSpcParam DocAttachedSpcParam;
typedef ksDocAttachedSpcParamPtr DocAttachedSpcParamPtr;
typedef ksSpcObjParam SpcObjParam;
typedef ksSpcObjParamPtr SpcObjParamPtr;
typedef ksLibStyle LibStyle;
typedef ksLibStylePtr LibStylePtr;
typedef ksDataBaseObject DataBaseObject;
typedef ksDataBaseObjectPtr DataBaseObjectPtr;
typedef ksSpcDocument SpcDocument;
typedef ksSpcDocumentPtr SpcDocumentPtr;
typedef ksSpecification Specification;
typedef ksSpecificationPtr SpecificationPtr;
typedef ksDocumentTxt DocumentTxt;
typedef ksDocumentTxtPtr DocumentTxtPtr;
typedef ksAttributeTypeParam AttributeTypeParam;
typedef ksAttributeTypeParamPtr AttributeTypeParamPtr;
typedef ksColumnInfoParam ColumnInfoParam;
typedef ksColumnInfoParamPtr ColumnInfoParamPtr;
typedef ksAttributeParam AttributeParam;
typedef ksAttributeParamPtr AttributeParamPtr;
typedef ksVariable Variable;
typedef ksVariablePtr VariablePtr;
typedef ksLibraryAttrTypeParam LibraryAttrTypeParam;
typedef ksLibraryAttrTypeParamPtr LibraryAttrTypeParamPtr;
typedef ksAttributeObject AttributeObject;
typedef ksAttributeObjectPtr AttributeObjectPtr;
typedef ksRequestInfo3D RequestInfo3D;
typedef ksRequestInfo3DPtr RequestInfo3DPtr;
typedef ksMateConstraint MateConstraint;
typedef ksMateConstraintPtr MateConstraintPtr;
typedef ksDefaultObject DefaultObject;
typedef ksDefaultObjectPtr DefaultObjectPtr;
typedef ksEntity entity;
typedef ksEntityPtr entityPtr;
typedef ksPart part;
typedef ksPartPtr partPtr;
typedef ksDocument3D Document3D;
typedef ksDocument3DPtr Document3DPtr;
typedef ksModelLibrary ModelLibrary;
typedef ksModelLibraryPtr ModelLibraryPtr;
typedef ksEntityCollection EntityCollection;
typedef ksEntityCollectionPtr EntityCollectionPtr;
typedef ksVariableCollection VariableCollection;
typedef ksVariableCollectionPtr VariableCollectionPtr;
typedef ksMateConstraintCollection MateConstraintCollection;
typedef ksMateConstraintCollectionPtr MateConstraintCollectionPtr;
typedef ksPartCollection PartCollection;
typedef ksPartCollectionPtr PartCollectionPtr;
typedef ksMeshPartArrayDefinition MeshPartArrayDefinition;
typedef ksMeshPartArrayDefinitionPtr MeshPartArrayDefinitionPtr;
typedef ksCircularPartArrayDefinition CircularPartArrayDefinition;
typedef ksCircularPartArrayDefinitionPtr CircularPartArrayDefinitionPtr;
typedef ksCurvePartArrayDefinition CurvePartArrayDefinition;
typedef ksCurvePartArrayDefinitionPtr CurvePartArrayDefinitionPtr;
typedef ksDerivativePartArrayDefinition DerivativePartArrayDefinition;
typedef ksDerivativePartArrayDefinitionPtr DerivativePartArrayDefinitionPtr;
typedef ksAxis2PlanesDefinition Axis2PlanesDefinition;
typedef ksAxis2PlanesDefinitionPtr Axis2PlanesDefinitionPtr;
typedef ksAxisOperationsDefinition AxisOperationsDefinition;
typedef ksAxisOperationsDefinitionPtr AxisOperationsDefinitionPtr;
typedef ksAxis2PointsDefinition Axis2PointsDefinition;
typedef ksAxis2PointsDefinitionPtr Axis2PointsDefinitionPtr;
typedef ksAxisEdgeDefinition AxisEdgeDefinition;
typedef ksAxisEdgeDefinitionPtr AxisEdgeDefinitionPtr;
typedef ksMeshCopyDefinition MeshCopyDefinition;
typedef ksMeshCopyDefinitionPtr MeshCopyDefinitionPtr;
typedef ksCircularCopyDefinition CircularCopyDefinition;
typedef ksCircularCopyDefinitionPtr CircularCopyDefinitionPtr;
typedef ksCurveCopyDefinition CurveCopyDefinition;
typedef ksCurveCopyDefinitionPtr CurveCopyDefinitionPtr;
typedef ksMirrorCopyDefinition MirrorCopyDefinition;
typedef ksMirrorCopyDefinitionPtr MirrorCopyDefinitionPtr;
typedef ksMirrorCopyAllDefinition MirrorCopyAllDefinition;
typedef ksMirrorCopyAllDefinitionPtr MirrorCopyAllDefinitionPtr;
typedef ksConicSpiralDefinition ConicSpiralDefinition;
typedef ksConicSpiralDefinitionPtr ConicSpiralDefinitionPtr;
typedef ksCylindricSpiralDefinition CylindricSpiralDefinition;
typedef ksCylindricSpiralDefinitionPtr CylindricSpiralDefinitionPtr;
typedef ksPolyLineDefinition PolyLineDefinition;
typedef ksPolyLineDefinitionPtr PolyLineDefinitionPtr;
typedef ksSplineDefinition SplineDefinition;
typedef ksSplineDefinitionPtr SplineDefinitionPtr;
typedef ksFaceDefinition faceDefinition;
typedef ksFaceDefinitionPtr faceDefinitionPtr;
typedef ksEdgeDefinition EdgeDefinition;
typedef ksEdgeDefinitionPtr EdgeDefinitionPtr;
typedef ksChamferDefinition ChamferDefinition;
typedef ksChamferDefinitionPtr ChamferDefinitionPtr;
typedef ksFilletDefinition FilletDefinition;
typedef ksFilletDefinitionPtr FilletDefinitionPtr;
typedef ksBaseExtrusionDefinition BaseExtrusionDefinition;
typedef ksBaseExtrusionDefinitionPtr BaseExtrusionDefinitionPtr;
typedef ksBossExtrusionDefinition BossExtrusionDefinition;
typedef ksBossExtrusionDefinitionPtr BossExtrusionDefinitionPtr;
typedef ksCutExtrusionDefinition CutExtrusionDefinition;
typedef ksCutExtrusionDefinitionPtr CutExtrusionDefinitionPtr;
typedef ksExtrusionSurfaceDefinition ExtrusionSurfaceDefinition;
typedef ksExtrusionSurfaceDefinitionPtr ExtrusionSurfaceDefinitionPtr;
typedef ksBaseLoftDefinition BaseLoftDefinition;
typedef ksBaseLoftDefinitionPtr BaseLoftDefinitionPtr;
typedef ksBossLoftDefinition BossLoftDefinition;
typedef ksBossLoftDefinitionPtr BossLoftDefinitionPtr;
typedef ksCutLoftDefinition CutLoftDefinition;
typedef ksCutLoftDefinitionPtr CutLoftDefinitionPtr;
typedef ksLoftSurfaceDefinition LoftSurfaceDefinition;
typedef ksLoftSurfaceDefinitionPtr LoftSurfaceDefinitionPtr;
typedef ksInclineDefinition InclineDefinition;
typedef ksInclineDefinitionPtr InclineDefinitionPtr;
typedef ksShellDefinition ShellDefinition;
typedef ksShellDefinitionPtr ShellDefinitionPtr;
typedef ksBaseEvolutionDefinition BaseEvolutionDefinition;
typedef ksBaseEvolutionDefinitionPtr BaseEvolutionDefinitionPtr;
typedef ksBossEvolutionDefinition BossEvolutionDefinition;
typedef ksBossEvolutionDefinitionPtr BossEvolutionDefinitionPtr;
typedef ksCutEvolutionDefinition CutEvolutionDefinition;
typedef ksCutEvolutionDefinitionPtr CutEvolutionDefinitionPtr;
typedef ksEvolutionSurfaceDefinition EvolutionSurfaceDefinition;
typedef ksEvolutionSurfaceDefinitionPtr EvolutionSurfaceDefinitionPtr;
typedef ksRibDefinition RibDefinition;
typedef ksRibDefinitionPtr RibDefinitionPtr;
typedef ksCutByPlaneDefinition CutByPlaneDefinition;
typedef ksCutByPlaneDefinitionPtr CutByPlaneDefinitionPtr;
typedef ksCutBySketchDefinition CutBySketchDefinition;
typedef ksCutBySketchDefinitionPtr CutBySketchDefinitionPtr;
typedef ksPlaneOffsetDefinition PlaneOffsetDefinition;
typedef ksPlaneOffsetDefinitionPtr PlaneOffsetDefinitionPtr;
typedef ksPlaneAngleDefinition PlaneAngleDefinition;
typedef ksPlaneAngleDefinitionPtr PlaneAngleDefinitionPtr;
typedef ksPlane3PointsDefinition Plane3PointsDefinition;
typedef ksPlane3PointsDefinitionPtr Plane3PointsDefinitionPtr;
typedef ksPlaneNormalToSurfaceDefinition PlaneNormalToSurfaceDefinition;
typedef ksPlaneNormalToSurfaceDefinitionPtr PlaneNormalToSurfaceDefinitionPtr;
typedef ksPlaneTangentToSurfaceDefinition PlaneTangentToSurfaceDefinition;
typedef ksPlaneTangentToSurfaceDefinitionPtr PlaneTangentToSurfaceDefinitionPtr;
typedef ksPlaneEdgePointDefinition PlaneEdgePointDefinition;
typedef ksPlaneEdgePointDefinitionPtr PlaneEdgePointDefinitionPtr;
typedef ksPlaneParallelDefinition PlaneParallelDefinition;
typedef ksPlaneParallelDefinitionPtr PlaneParallelDefinitionPtr;
typedef ksPlanePerpendicularDefinition PlanePerpendicularDefinition;
typedef ksPlanePerpendicularDefinitionPtr PlanePerpendicularDefinitionPtr;
typedef ksPlaneLineToEdgeDefinition PlaneLineToEdgeDefinition;
typedef ksPlaneLineToEdgeDefinitionPtr PlaneLineToEdgeDefinitionPtr;
typedef ksPlaneLineToPlaneDefinition PlaneLineToPlaneDefinition;
typedef ksPlaneLineToPlaneDefinitionPtr PlaneLineToPlaneDefinitionPtr;
typedef ksThinParam ThinParam;
typedef ksThinParamPtr ThinParamPtr;
typedef ksExtrusionParam ExtrusionParam;
typedef ksExtrusionParamPtr ExtrusionParamPtr;
typedef ksRotatedParam RotatedParam;
typedef ksRotatedParamPtr RotatedParamPtr;
typedef ksColorParam ColorParam;
typedef ksColorParamPtr ColorParamPtr;
typedef ksBaseRotatedDefinition BaseRotatedDefinition;
typedef ksBaseRotatedDefinitionPtr BaseRotatedDefinitionPtr;
typedef ksBossRotatedDefinition BossRotatedDefinition;
typedef ksBossRotatedDefinitionPtr BossRotatedDefinitionPtr;
typedef ksCutRotatedDefinition CutRotatedDefinition;
typedef ksCutRotatedDefinitionPtr CutRotatedDefinitionPtr;
typedef ksRotatedSurfaceDefinition RotatedSurfaceDefinition;
typedef ksRotatedSurfaceDefinitionPtr RotatedSurfaceDefinitionPtr;
typedef ksSketchDefinition SketchDefinition;
typedef ksSketchDefinitionPtr SketchDefinitionPtr;
typedef ksRasterFormatParam RasterFormatParam;
typedef ksRasterFormatParamPtr RasterFormatParamPtr;
typedef ksAdditionFormatParam AdditionFormatParam;
typedef ksAdditionFormatParamPtr AdditionFormatParamPtr;
typedef ksConstraintParam ConstraintParam;
typedef ksConstraintParamPtr ConstraintParamPtr;
typedef ksImportedSurfaceDefinition ImportedSurfaceDefinition;
typedef ksImportedSurfaceDefinitionPtr ImportedSurfaceDefinitionPtr;
typedef ksFaceCollection FaceCollection;
typedef ksFaceCollectionPtr FaceCollectionPtr;
typedef ksVertexDefinition VertexDefinition;
typedef ksVertexDefinitionPtr VertexDefinitionPtr;
typedef ksFeature Feature;
typedef ksFeaturePtr FeaturePtr;
typedef ksTessellation Tessellation;
typedef ksTessellationPtr TessellationPtr;
typedef ksFacet facet;
typedef ksFacetPtr facetPtr;
typedef ksMeasurer Measurer;
typedef ksMeasurerPtr MeasurerPtr;
typedef ksBodyCollection BodyCollection;
typedef ksBodyCollectionPtr BodyCollectionPtr;
typedef ksBody body;
typedef ksBodyPtr bodyPtr;
typedef ksSurface Surface;
typedef ksSurfacePtr SurfacePtr;
typedef ksEdgeCollection EdgeCollection;
typedef ksEdgeCollectionPtr EdgeCollectionPtr;
typedef ksOrientedEdge OrientedEdge;
typedef ksOrientedEdgePtr OrientedEdgePtr;
typedef ksOrientedEdgeCollection OrientedEdgeCollection;
typedef ksOrientedEdgeCollectionPtr OrientedEdgeCollectionPtr;
typedef ksLoop Loop;
typedef ksLoopPtr LoopPtr;
typedef ksLoopCollection LoopCollection;
typedef ksLoopCollectionPtr LoopCollectionPtr;
typedef ksCurve3D Curve3D;
typedef ksCurve3DPtr Curve3DPtr;
typedef ksLineSeg3dParam LineSeg3dParam;
typedef ksLineSeg3dParamPtr LineSeg3dParamPtr;
typedef ksCircle3dParam Circle3dParam;
typedef ksCircle3dParamPtr Circle3dParamPtr;
typedef ksEllipse3dParam Ellipse3dParam;
typedef ksEllipse3dParamPtr Ellipse3dParamPtr;
typedef ksPlaneParam PlaneParam;
typedef ksPlaneParamPtr PlaneParamPtr;
typedef ksConeParam ConeParam;
typedef ksConeParamPtr ConeParamPtr;
typedef ksCylinderParam CylinderParam;
typedef ksCylinderParamPtr CylinderParamPtr;
typedef ksSphereParam SphereParam;
typedef ksSphereParamPtr SphereParamPtr;
typedef ksTorusParam TorusParam;
typedef ksTorusParamPtr TorusParamPtr;
typedef ksNurbsPoint3dParam NurbsPoint3dParam;
typedef ksNurbsPoint3dParamPtr NurbsPoint3dParamPtr;
typedef ksNurbsSurfaceParam NurbsSurfaceParam;
typedef ksNurbsSurfaceParamPtr NurbsSurfaceParamPtr;
typedef ksNurbs3dParam Nurbs3dParam;
typedef ksNurbs3dParamPtr Nurbs3dParamPtr;
typedef ksNurbsKnotCollection NurbsKnotCollection;
typedef ksNurbsKnotCollectionPtr NurbsKnotCollectionPtr;
typedef ksNurbsPoint3dCollCollection NurbsPoint3dCollCollection;
typedef ksNurbsPoint3dCollCollectionPtr NurbsPoint3dCollCollectionPtr;
typedef ksNurbsPoint3dCollection NurbsPoint3dCollection;
typedef ksNurbsPoint3dCollectionPtr NurbsPoint3dCollectionPtr;
typedef ksViewProjection ViewProjection;
typedef ksViewProjectionPtr ViewProjectionPtr;
typedef ksViewProjectionCollection ViewProjectionCollection;
typedef ksViewProjectionCollectionPtr ViewProjectionCollectionPtr;
typedef ksSelectionMng SelectionMng;
typedef ksSelectionMngPtr SelectionMngPtr;
typedef ksChooseMng ChooseMng;
typedef ksChooseMngPtr ChooseMngPtr;
typedef ksArc3dParam Arc3dParam;
typedef ksArc3dParamPtr Arc3dParamPtr;
typedef ksTreeNodeParam TreeNodeParam;
typedef ksTreeNodeParamPtr TreeNodeParamPtr;
typedef ksAssociationViewParam AssociationViewParam;
typedef ksAssociationViewParamPtr AssociationViewParamPtr;
typedef ksViewColorParam ViewColorParam;
typedef ksViewColorParamPtr ViewColorParamPtr;
typedef ksAxisLineParam AxisLineParam;
typedef ksAxisLineParamPtr AxisLineParamPtr;
typedef ksTextDocumentParam TextDocumentParam;
typedef ksTextDocumentParamPtr TextDocumentParamPtr;
typedef ksRemoteElementParam RemoteElementParam;
typedef ksRemoteElementParamPtr RemoteElementParamPtr;
typedef ksDeletedCopyCollection DeletedCopyCollection;
typedef ksDeletedCopyCollectionPtr DeletedCopyCollectionPtr;
typedef ksCopyObjectParam CopyObjectParam;
typedef ksCopyObjectParamPtr CopyObjectParamPtr;
typedef ksThreadDefinition ThreadDefinition;
typedef ksThreadDefinitionPtr ThreadDefinitionPtr;
typedef ksOverlapObjectOptions OverlapObjectOptions;
typedef ksOverlapObjectOptionsPtr OverlapObjectOptionsPtr;
typedef ksAttribute3D Attribute3D;
typedef ksAttribute3DPtr Attribute3DPtr;
typedef ksAttribute3DCollection Attribute3DCollection;
typedef ksAttribute3DCollectionPtr Attribute3DCollectionPtr;
typedef ksComponentPositioner ComponentPositioner;
typedef ksComponentPositionerPtr ComponentPositionerPtr;
typedef ksObjectsFilter3D ObjectsFilter3D;
typedef ksObjectsFilter3DPtr ObjectsFilter3DPtr;
typedef ksParametrizationParam ParametrizationParam;
typedef ksParametrizationParamPtr ParametrizationParamPtr;
typedef ksMacro3DDefinition Macro3DDefinition;
typedef ksMacro3DDefinitionPtr Macro3DDefinitionPtr;
typedef ksAxisConefaceDefinition AxisConefaceDefinition;
typedef ksAxisConefaceDefinitionPtr AxisConefaceDefinitionPtr;
typedef ksUnionComponentsDefinition UnionComponentsDefinition;
typedef ksUnionComponentsDefinitionPtr UnionComponentsDefinitionPtr;
typedef ksMoldCavityDefinition MoldCavityDefinition;
typedef ksMoldCavityDefinitionPtr MoldCavityDefinitionPtr;
typedef ksCoordinate3dCollection Coordinate3dCollection;
typedef ksCoordinate3dCollectionPtr Coordinate3dCollectionPtr;
typedef ksIntersectionResult IntersectionResult;
typedef ksIntersectionResultPtr IntersectionResultPtr;
typedef ksPlaneMiddleDefinition PlaneMiddleDefinition;
typedef ksPlaneMiddleDefinitionPtr PlaneMiddleDefinitionPtr;
typedef ksControlPointDefinition ControlPointDefinition;
typedef ksControlPointDefinitionPtr ControlPointDefinitionPtr;
typedef ksConjunctivePointDefinition ConjunctivePointDefinition;
typedef ksConjunctivePointDefinitionPtr ConjunctivePointDefinitionPtr;
typedef ksChooseBodies ChooseBodies;
typedef ksChooseBodiesPtr ChooseBodiesPtr;
typedef ksAggregateDefinition AggregateDefinition;
typedef ksAggregateDefinitionPtr AggregateDefinitionPtr;
typedef ksChangeLeaderParam ChangeLeaderParam;
typedef ksChangeLeaderParamPtr ChangeLeaderParamPtr;
typedef ksChooseParts ChooseParts;
typedef ksChoosePartsPtr ChoosePartsPtr;

#define LIBID_OF_Object2DNotify (&LIBID_Kompas6API5)
#define LIBID_OF_SelectionMngNotify (&LIBID_Kompas6API5)
#define LIBID_OF_Document2DNotify (&LIBID_Kompas6API5)
#define LIBID_OF_Document3DNotify (&LIBID_Kompas6API5)
#define LIBID_OF_Object3DNotify (&LIBID_Kompas6API5)
#define LIBID_OF_SpcDocumentNotify (&LIBID_Kompas6API5)
#define LIBID_OF_SpcObjectNotify (&LIBID_Kompas6API5)
#define LIBID_OF_App (&LIBID_Kompas6API5)
#define LIBID_OF_Object2DNotifyResult (&LIBID_Kompas6API5)
#define LIBID_OF_FeatureCollection (&LIBID_Kompas6API5)
#define LIBID_OF_placement (&LIBID_Kompas6API5)
#define LIBID_OF_Object3DNotifyResult (&LIBID_Kompas6API5)
#define LIBID_OF_Document3DNotifyResult (&LIBID_Kompas6API5)
#define LIBID_OF_Document2D (&LIBID_Kompas6API5)
#define LIBID_OF_SpecRoughParam (&LIBID_Kompas6API5)
#define LIBID_OF_EllipseParam (&LIBID_Kompas6API5)
#define LIBID_OF_EllipseArcParam (&LIBID_Kompas6API5)
#define LIBID_OF_EllipseArcParam1 (&LIBID_Kompas6API5)
#define LIBID_OF_EquidistantParam (&LIBID_Kompas6API5)
#define LIBID_OF_ParagraphParam (&LIBID_Kompas6API5)
#define LIBID_OF_TextItemParam (&LIBID_Kompas6API5)
#define LIBID_OF_TextLineParam (&LIBID_Kompas6API5)
#define LIBID_OF_TextItemFont (&LIBID_Kompas6API5)
#define LIBID_OF_CornerParam (&LIBID_Kompas6API5)
#define LIBID_OF_ContourParam (&LIBID_Kompas6API5)
#define LIBID_OF_LayerParam (&LIBID_Kompas6API5)
#define LIBID_OF_LineParam (&LIBID_Kompas6API5)
#define LIBID_OF_RegularPolygonParam (&LIBID_Kompas6API5)
#define LIBID_OF_RectangleParam (&LIBID_Kompas6API5)
#define LIBID_OF_BaseParam (&LIBID_Kompas6API5)
#define LIBID_OF_LtVariant (&LIBID_Kompas6API5)
#define LIBID_OF_UserParam (&LIBID_Kompas6API5)
#define LIBID_OF_MathPointParam (&LIBID_Kompas6API5)
#define LIBID_OF_CurvePicture (&LIBID_Kompas6API5)
#define LIBID_OF_CurvePattern (&LIBID_Kompas6API5)
#define LIBID_OF_TAN (&LIBID_Kompas6API5)
#define LIBID_OF_CON (&LIBID_Kompas6API5)
#define LIBID_OF_InertiaParam (&LIBID_Kompas6API5)
#define LIBID_OF_MassInertiaParam (&LIBID_Kompas6API5)
#define LIBID_OF_Mathematic2D (&LIBID_Kompas6API5)
#define LIBID_OF_DynamicArray (&LIBID_Kompas6API5)
#define LIBID_OF_RDimDrawingParam (&LIBID_Kompas6API5)
#define LIBID_OF_RDimSourceParam (&LIBID_Kompas6API5)
#define LIBID_OF_RDimParam (&LIBID_Kompas6API5)
#define LIBID_OF_LineSegParam (&LIBID_Kompas6API5)
#define LIBID_OF_CircleParam (&LIBID_Kompas6API5)
#define LIBID_OF_ArcByAngleParam (&LIBID_Kompas6API5)
#define LIBID_OF_ArcByPointParam (&LIBID_Kompas6API5)
#define LIBID_OF_PointParam (&LIBID_Kompas6API5)
#define LIBID_OF_HatchParam (&LIBID_Kompas6API5)
#define LIBID_OF_TextParam (&LIBID_Kompas6API5)
#define LIBID_OF_NurbsPointParam (&LIBID_Kompas6API5)
#define LIBID_OF_DoubleValue (&LIBID_Kompas6API5)
#define LIBID_OF_NurbsParam (&LIBID_Kompas6API5)
#define LIBID_OF_ConicArcParam (&LIBID_Kompas6API5)
#define LIBID_OF_CentreParam (&LIBID_Kompas6API5)
#define LIBID_OF_PlacementParam (&LIBID_Kompas6API5)
#define LIBID_OF_RasterParam (&LIBID_Kompas6API5)
#define LIBID_OF_PolylineParam (&LIBID_Kompas6API5)
#define LIBID_OF_InsertFragmentParam (&LIBID_Kompas6API5)
#define LIBID_OF_ViewParam (&LIBID_Kompas6API5)
#define LIBID_OF_LBreakDimSource (&LIBID_Kompas6API5)
#define LIBID_OF_BreakDimDrawing (&LIBID_Kompas6API5)
#define LIBID_OF_LBreakDimParam (&LIBID_Kompas6API5)
#define LIBID_OF_ABreakDimParam (&LIBID_Kompas6API5)
#define LIBID_OF_InsertFragmentParamEx (&LIBID_Kompas6API5)
#define LIBID_OF_BezierParam (&LIBID_Kompas6API5)
#define LIBID_OF_BezierPointParam (&LIBID_Kompas6API5)
#define LIBID_OF_DimTextParam (&LIBID_Kompas6API5)
#define LIBID_OF_LDimSourceParam (&LIBID_Kompas6API5)
#define LIBID_OF_DimDrawingParam (&LIBID_Kompas6API5)
#define LIBID_OF_LDimParam (&LIBID_Kompas6API5)
#define LIBID_OF_ADimSourceParam (&LIBID_Kompas6API5)
#define LIBID_OF_DimensionPartsParam (&LIBID_Kompas6API5)
#define LIBID_OF_ADimParam (&LIBID_Kompas6API5)
#define LIBID_OF_RBreakDrawingParam (&LIBID_Kompas6API5)
#define LIBID_OF_RBreakDimParam (&LIBID_Kompas6API5)
#define LIBID_OF_QualityItemParam (&LIBID_Kompas6API5)
#define LIBID_OF_QualityContensParam (&LIBID_Kompas6API5)
#define LIBID_OF_Iterator (&LIBID_Kompas6API5)
#define LIBID_OF_Fragment (&LIBID_Kompas6API5)
#define LIBID_OF_FragmentLib (&LIBID_Kompas6API5)
#define LIBID_OF_TechnicalDemandParam (&LIBID_Kompas6API5)
#define LIBID_OF_OrdinatedSourceParam (&LIBID_Kompas6API5)
#define LIBID_OF_OrdinatedDimParam (&LIBID_Kompas6API5)
#define LIBID_OF_OrdinatedDrawingParam (&LIBID_Kompas6API5)
#define LIBID_OF_SheetSize (&LIBID_Kompas6API5)
#define LIBID_OF_StandartSheet (&LIBID_Kompas6API5)
#define LIBID_OF_SheetPar (&LIBID_Kompas6API5)
#define LIBID_OF_DocumentParam (&LIBID_Kompas6API5)
#define LIBID_OF_DimensionsOptions (&LIBID_Kompas6API5)
#define LIBID_OF_SnapOptions (&LIBID_Kompas6API5)
#define LIBID_OF_LibraryStyleParam (&LIBID_Kompas6API5)
#define LIBID_OF_Stamp (&LIBID_Kompas6API5)
#define LIBID_OF_SheetOptions (&LIBID_Kompas6API5)
#define LIBID_OF_CurvePatternEx (&LIBID_Kompas6API5)
#define LIBID_OF_CurveStyleParam (&LIBID_Kompas6API5)
#define LIBID_OF_TextStyleParam (&LIBID_Kompas6API5)
#define LIBID_OF_HatchLineParam (&LIBID_Kompas6API5)
#define LIBID_OF_HatchStyleParam (&LIBID_Kompas6API5)
#define LIBID_OF_RectParam (&LIBID_Kompas6API5)
#define LIBID_OF_ShelfPar (&LIBID_Kompas6API5)
#define LIBID_OF_roughPar (&LIBID_Kompas6API5)
#define LIBID_OF_RoughParam (&LIBID_Kompas6API5)
#define LIBID_OF_Char255 (&LIBID_Kompas6API5)
#define LIBID_OF_leaderParam (&LIBID_Kompas6API5)
#define LIBID_OF_posLeaderParam (&LIBID_Kompas6API5)
#define LIBID_OF_brandLeaderParam (&LIBID_Kompas6API5)
#define LIBID_OF_markerLeaderParam (&LIBID_Kompas6API5)
#define LIBID_OF_Type1 (&LIBID_Kompas6API5)
#define LIBID_OF_Type2 (&LIBID_Kompas6API5)
#define LIBID_OF_Type3 (&LIBID_Kompas6API5)
#define LIBID_OF_Type5 (&LIBID_Kompas6API5)
#define LIBID_OF_Type6 (&LIBID_Kompas6API5)
#define LIBID_OF_phantom (&LIBID_Kompas6API5)
#define LIBID_OF_RequestInfo (&LIBID_Kompas6API5)
#define LIBID_OF_ViewPointerParam (&LIBID_Kompas6API5)
#define LIBID_OF_CutLineParam (&LIBID_Kompas6API5)
#define LIBID_OF_ToleranceBranch (&LIBID_Kompas6API5)
#define LIBID_OF_ToleranceParam (&LIBID_Kompas6API5)
#define LIBID_OF_SpcColumnParam (&LIBID_Kompas6API5)
#define LIBID_OF_RecordTypeAttrParam (&LIBID_Kompas6API5)
#define LIBID_OF_NumberTypeAttrParam (&LIBID_Kompas6API5)
#define LIBID_OF_SpcStyleColumnParam (&LIBID_Kompas6API5)
#define LIBID_OF_SpcStyleSectionParam (&LIBID_Kompas6API5)
#define LIBID_OF_SpcSubSectionParam (&LIBID_Kompas6API5)
#define LIBID_OF_SpcTuningSectionParam (&LIBID_Kompas6API5)
#define LIBID_OF_SpcTuningStyleParam (&LIBID_Kompas6API5)
#define LIBID_OF_SpcStyleParam (&LIBID_Kompas6API5)
#define LIBID_OF_SpcDescrParam (&LIBID_Kompas6API5)
#define LIBID_OF_DocAttachedSpcParam (&LIBID_Kompas6API5)
#define LIBID_OF_SpcObjParam (&LIBID_Kompas6API5)
#define LIBID_OF_LibStyle (&LIBID_Kompas6API5)
#define LIBID_OF_DataBaseObject (&LIBID_Kompas6API5)
#define LIBID_OF_SpcDocument (&LIBID_Kompas6API5)
#define LIBID_OF_Specification (&LIBID_Kompas6API5)
#define LIBID_OF_DocumentTxt (&LIBID_Kompas6API5)
#define LIBID_OF_AttributeTypeParam (&LIBID_Kompas6API5)
#define LIBID_OF_ColumnInfoParam (&LIBID_Kompas6API5)
#define LIBID_OF_AttributeParam (&LIBID_Kompas6API5)
#define LIBID_OF_Variable (&LIBID_Kompas6API5)
#define LIBID_OF_LibraryAttrTypeParam (&LIBID_Kompas6API5)
#define LIBID_OF_AttributeObject (&LIBID_Kompas6API5)
#define LIBID_OF_RequestInfo3D (&LIBID_Kompas6API5)
#define LIBID_OF_MateConstraint (&LIBID_Kompas6API5)
#define LIBID_OF_DefaultObject (&LIBID_Kompas6API5)
#define LIBID_OF_entity (&LIBID_Kompas6API5)
#define LIBID_OF_part (&LIBID_Kompas6API5)
#define LIBID_OF_Document3D (&LIBID_Kompas6API5)
#define LIBID_OF_ModelLibrary (&LIBID_Kompas6API5)
#define LIBID_OF_EntityCollection (&LIBID_Kompas6API5)
#define LIBID_OF_VariableCollection (&LIBID_Kompas6API5)
#define LIBID_OF_MateConstraintCollection (&LIBID_Kompas6API5)
#define LIBID_OF_PartCollection (&LIBID_Kompas6API5)
#define LIBID_OF_MeshPartArrayDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_CircularPartArrayDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_CurvePartArrayDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_DerivativePartArrayDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_Axis2PlanesDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_AxisOperationsDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_Axis2PointsDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_AxisEdgeDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_MeshCopyDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_CircularCopyDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_CurveCopyDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_MirrorCopyDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_MirrorCopyAllDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_ConicSpiralDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_CylindricSpiralDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_PolyLineDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_SplineDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_faceDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_EdgeDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_ChamferDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_FilletDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_BaseExtrusionDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_BossExtrusionDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_CutExtrusionDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_ExtrusionSurfaceDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_BaseLoftDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_BossLoftDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_CutLoftDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_LoftSurfaceDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_InclineDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_ShellDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_BaseEvolutionDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_BossEvolutionDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_CutEvolutionDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_EvolutionSurfaceDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_RibDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_CutByPlaneDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_CutBySketchDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_PlaneOffsetDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_PlaneAngleDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_Plane3PointsDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_PlaneNormalToSurfaceDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_PlaneTangentToSurfaceDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_PlaneEdgePointDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_PlaneParallelDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_PlanePerpendicularDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_PlaneLineToEdgeDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_PlaneLineToPlaneDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_ThinParam (&LIBID_Kompas6API5)
#define LIBID_OF_ExtrusionParam (&LIBID_Kompas6API5)
#define LIBID_OF_RotatedParam (&LIBID_Kompas6API5)
#define LIBID_OF_ColorParam (&LIBID_Kompas6API5)
#define LIBID_OF_BaseRotatedDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_BossRotatedDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_CutRotatedDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_RotatedSurfaceDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_SketchDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_RasterFormatParam (&LIBID_Kompas6API5)
#define LIBID_OF_AdditionFormatParam (&LIBID_Kompas6API5)
#define LIBID_OF_ConstraintParam (&LIBID_Kompas6API5)
#define LIBID_OF_ImportedSurfaceDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_FaceCollection (&LIBID_Kompas6API5)
#define LIBID_OF_VertexDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_Feature (&LIBID_Kompas6API5)
#define LIBID_OF_Tessellation (&LIBID_Kompas6API5)
#define LIBID_OF_facet (&LIBID_Kompas6API5)
#define LIBID_OF_Measurer (&LIBID_Kompas6API5)
#define LIBID_OF_BodyCollection (&LIBID_Kompas6API5)
#define LIBID_OF_body (&LIBID_Kompas6API5)
#define LIBID_OF_Surface (&LIBID_Kompas6API5)
#define LIBID_OF_EdgeCollection (&LIBID_Kompas6API5)
#define LIBID_OF_OrientedEdge (&LIBID_Kompas6API5)
#define LIBID_OF_OrientedEdgeCollection (&LIBID_Kompas6API5)
#define LIBID_OF_Loop (&LIBID_Kompas6API5)
#define LIBID_OF_LoopCollection (&LIBID_Kompas6API5)
#define LIBID_OF_Curve3D (&LIBID_Kompas6API5)
#define LIBID_OF_LineSeg3dParam (&LIBID_Kompas6API5)
#define LIBID_OF_Circle3dParam (&LIBID_Kompas6API5)
#define LIBID_OF_Ellipse3dParam (&LIBID_Kompas6API5)
#define LIBID_OF_PlaneParam (&LIBID_Kompas6API5)
#define LIBID_OF_ConeParam (&LIBID_Kompas6API5)
#define LIBID_OF_CylinderParam (&LIBID_Kompas6API5)
#define LIBID_OF_SphereParam (&LIBID_Kompas6API5)
#define LIBID_OF_TorusParam (&LIBID_Kompas6API5)
#define LIBID_OF_NurbsPoint3dParam (&LIBID_Kompas6API5)
#define LIBID_OF_NurbsSurfaceParam (&LIBID_Kompas6API5)
#define LIBID_OF_Nurbs3dParam (&LIBID_Kompas6API5)
#define LIBID_OF_NurbsKnotCollection (&LIBID_Kompas6API5)
#define LIBID_OF_NurbsPoint3dCollCollection (&LIBID_Kompas6API5)
#define LIBID_OF_NurbsPoint3dCollection (&LIBID_Kompas6API5)
#define LIBID_OF_ViewProjection (&LIBID_Kompas6API5)
#define LIBID_OF_ViewProjectionCollection (&LIBID_Kompas6API5)
#define LIBID_OF_SelectionMng (&LIBID_Kompas6API5)
#define LIBID_OF_ChooseMng (&LIBID_Kompas6API5)
#define LIBID_OF_Arc3dParam (&LIBID_Kompas6API5)
#define LIBID_OF_TreeNodeParam (&LIBID_Kompas6API5)
#define LIBID_OF_AssociationViewParam (&LIBID_Kompas6API5)
#define LIBID_OF_ViewColorParam (&LIBID_Kompas6API5)
#define LIBID_OF_AxisLineParam (&LIBID_Kompas6API5)
#define LIBID_OF_TextDocumentParam (&LIBID_Kompas6API5)
#define LIBID_OF_RemoteElementParam (&LIBID_Kompas6API5)
#define LIBID_OF_DeletedCopyCollection (&LIBID_Kompas6API5)
#define LIBID_OF_CopyObjectParam (&LIBID_Kompas6API5)
#define LIBID_OF_ThreadDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_OverlapObjectOptions (&LIBID_Kompas6API5)
#define LIBID_OF_Attribute3D (&LIBID_Kompas6API5)
#define LIBID_OF_Attribute3DCollection (&LIBID_Kompas6API5)
#define LIBID_OF_ComponentPositioner (&LIBID_Kompas6API5)
#define LIBID_OF_ObjectsFilter3D (&LIBID_Kompas6API5)
#define LIBID_OF_ParametrizationParam (&LIBID_Kompas6API5)
#define LIBID_OF_Macro3DDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_AxisConefaceDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_UnionComponentsDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_MoldCavityDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_Coordinate3dCollection (&LIBID_Kompas6API5)
#define LIBID_OF_IntersectionResult (&LIBID_Kompas6API5)
#define LIBID_OF_PlaneMiddleDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_ControlPointDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_ConjunctivePointDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_ChooseBodies (&LIBID_Kompas6API5)
#define LIBID_OF_AggregateDefinition (&LIBID_Kompas6API5)
#define LIBID_OF_ChangeLeaderParam (&LIBID_Kompas6API5)
#define LIBID_OF_ChooseParts (&LIBID_Kompas6API5)
// *********************************************************************//
// Interface: KompasObject
// Flags:     (4096) Dispatchable
// GUID:      {E36BC97C-39D6-4402-9C25-C7008A217E02}
// *********************************************************************//
interface KompasObject : public TDispWrapper<IDispatch>
{
  void __fastcall set_Visible(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* Visible */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_Visible()
  {
    _TDispID _dispid(/* Visible */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_lookStyle(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* lookStyle */ DISPID(99));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_lookStyle()
  {
    _TDispID _dispid(/* lookStyle */ DISPID(99));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Document3D()
  {
    _TDispID _dispid(/* Document3D */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ActiveDocument3D()
  {
    _TDispID _dispid(/* ActiveDocument3D */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Document2D()
  {
    _TDispID _dispid(/* Document2D */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ActiveDocument2D()
  {
    _TDispID _dispid(/* ActiveDocument2D */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall DataBaseObject()
  {
    _TDispID _dispid(/* DataBaseObject */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetIterator()
  {
    _TDispID _dispid(/* GetIterator */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetMathematic2D()
  {
    _TDispID _dispid(/* GetMathematic2D */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetParamStruct(short structType)
  {
    _TDispID _dispid(/* GetParamStruct */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = structType /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall SpcDocument()
  {
    _TDispID _dispid(/* SpcDocument */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall SpcActiveDocument()
  {
    _TDispID _dispid(/* SpcActiveDocument */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksMessage(BSTR s)
  {
    _TDispID _dispid(/* ksMessage */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = s /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksError(BSTR s)
  {
    _TDispID _dispid(/* ksError */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = s /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksEnableTaskAccess(long enabl/*[def,opt]*/)
  {
    _TDispID _dispid(/* ksEnableTaskAccess */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = enabl /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksReturnResult()
  {
    _TDispID _dispid(/* ksReturnResult */ DISPID(15));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksResultNULL()
  {
    _TDispID _dispid(/* ksResultNULL */ DISPID(16));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksIsEnableTaskAccess()
  {
    _TDispID _dispid(/* ksIsEnableTaskAccess */ DISPID(17));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksMessageBoxResult()
  {
    _TDispID _dispid(/* ksMessageBoxResult */ DISPID(18));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDrawSlide(long HWindow, long sldID)
  {
    _TDispID _dispid(/* ksDrawSlide */ DISPID(19));
    TAutoArgs<2> _args;
    _args[1] = HWindow /*[VT_I4:0]*/;
    _args[2] = sldID /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksStrResult()
  {
    _TDispID _dispid(/* ksStrResult */ DISPID(20));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetHWindow()
  {
    _TDispID _dispid(/* ksGetHWindow */ DISPID(21));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetWorkWindowColor()
  {
    _TDispID _dispid(/* ksGetWorkWindowColor */ DISPID(22));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksPumpWaitingMessages()
  {
    _TDispID _dispid(/* ksPumpWaitingMessages */ DISPID(23));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetCriticalProcess()
  {
    _TDispID _dispid(/* ksSetCriticalProcess */ DISPID(24));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksChoiceFile(BSTR ext, BSTR filter, TOLEBOOL preview)
  {
    _TDispID _dispid(/* ksChoiceFile */ DISPID(25));
    TAutoArgs<3> _args;
    _args[1] = ext /*[VT_BSTR:0]*/;
    _args[2] = filter /*[VT_BSTR:0]*/;
    _args[3] = preview /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDrawBitmap(long HWindow, long sldID)
  {
    _TDispID _dispid(/* ksDrawBitmap */ DISPID(26));
    TAutoArgs<2> _args;
    _args[1] = HWindow /*[VT_I4:0]*/;
    _args[2] = sldID /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksYesNo(BSTR s)
  {
    _TDispID _dispid(/* ksYesNo */ DISPID(27));
    TAutoArgs<1> _args;
    _args[1] = s /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDrawSlideFromFile(long HWindow, BSTR fileName)
  {
    _TDispID _dispid(/* ksDrawSlideFromFile */ DISPID(28));
    TAutoArgs<2> _args;
    _args[1] = HWindow /*[VT_I4:0]*/;
    _args[2] = fileName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksWriteSlide(BSTR fileName, long iD, double x, double y)
  {
    _TDispID _dispid(/* ksWriteSlide */ DISPID(29));
    TAutoArgs<4> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = iD /*[VT_I4:0]*/;
    _args[3] = x /*[VT_R8:0]*/;
    _args[4] = y /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksSlideBackground(long color)
  {
    _TDispID _dispid(/* ksSlideBackground */ DISPID(30));
    TAutoArgs<1> _args;
    _args[1] = color /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksReadDouble(BSTR mess, double defValue, double min, double max, double* value)
  {
    _TDispID _dispid(/* ksReadDouble */ DISPID(31));
    TAutoArgs<5> _args;
    _args[1] = mess /*[VT_BSTR:0]*/;
    _args[2] = defValue /*[VT_R8:0]*/;
    _args[3] = min /*[VT_R8:0]*/;
    _args[4] = max /*[VT_R8:0]*/;
    _args[5] = value /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksReadInt(BSTR mess, long defValue, long min, long max, long* value)
  {
    _TDispID _dispid(/* ksReadInt */ DISPID(32));
    TAutoArgs<5> _args;
    _args[1] = mess /*[VT_BSTR:0]*/;
    _args[2] = defValue /*[VT_I4:0]*/;
    _args[3] = min /*[VT_I4:0]*/;
    _args[4] = max /*[VT_I4:0]*/;
    _args[5] = value /*[VT_I4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksReadString(BSTR mess, BSTR value)
  {
    _TDispID _dispid(/* ksReadString */ DISPID(33));
    TAutoArgs<2> _args;
    _args[1] = mess /*[VT_BSTR:0]*/;
    _args[2] = value /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksFullFileName(BSTR oldName)
  {
    _TDispID _dispid(/* ksFullFileName */ DISPID(34));
    TAutoArgs<1> _args;
    _args[1] = oldName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksUniqueFileName()
  {
    _TDispID _dispid(/* ksUniqueFileName */ DISPID(35));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksRemoveUniqueFile(BSTR fileName)
  {
    _TDispID _dispid(/* ksRemoveUniqueFile */ DISPID(36));
    TAutoArgs<1> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksSystemControlStop()
  {
    _TDispID _dispid(/* ksSystemControlStop */ DISPID(37));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSystemControlStart(BSTR menuCommand)
  {
    _TDispID _dispid(/* ksSystemControlStart */ DISPID(38));
    TAutoArgs<1> _args;
    _args[1] = menuCommand /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetDynamicArray(long type)
  {
    _TDispID _dispid(/* GetDynamicArray */ DISPID(39));
    TAutoArgs<1> _args;
    _args[1] = type /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksChoiceFileAppointedDir(BSTR ext, BSTR filter, TOLEBOOL preview, long typeDir)
  {
    _TDispID _dispid(/* ksChoiceFileAppointedDir */ DISPID(40));
    TAutoArgs<4> _args;
    _args[1] = ext /*[VT_BSTR:0]*/;
    _args[2] = filter /*[VT_BSTR:0]*/;
    _args[3] = preview /*[VT_BOOL:0]*/;
    _args[4] = typeDir /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksChoiceFiles(BSTR ext, BSTR filter, LPDISPATCH p, TOLEBOOL preview)
  {
    _TDispID _dispid(/* ksChoiceFiles */ DISPID(41));
    TAutoArgs<4> _args;
    _args[1] = ext /*[VT_BSTR:0]*/;
    _args[2] = filter /*[VT_BSTR:0]*/;
    _args[3] = p /*[VT_DISPATCH:0]*/;
    _args[4] = preview /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksSaveFile(BSTR ext, BSTR oldName, BSTR filter, TOLEBOOL preview)
  {
    _TDispID _dispid(/* ksSaveFile */ DISPID(42));
    TAutoArgs<4> _args;
    _args[1] = ext /*[VT_BSTR:0]*/;
    _args[2] = oldName /*[VT_BSTR:0]*/;
    _args[3] = filter /*[VT_BSTR:0]*/;
    _args[4] = preview /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetAttributeObject()
  {
    _TDispID _dispid(/* GetAttributeObject */ DISPID(43));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksRefreshActiveWindow()
  {
    _TDispID _dispid(/* ksRefreshActiveWindow */ DISPID(44));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksSystemPath(long pathType)
  {
    _TDispID _dispid(/* ksSystemPath */ DISPID(45));
    TAutoArgs<1> _args;
    _args[1] = pathType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksGetRelativePathFromSystemPath(BSTR sourcePath, long pathType)
  {
    _TDispID _dispid(/* ksGetRelativePathFromSystemPath */ DISPID(46));
    TAutoArgs<2> _args;
    _args[1] = sourcePath /*[VT_BSTR:0]*/;
    _args[2] = pathType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksGetFullPathFromSystemPath(BSTR relativePath, long pathType)
  {
    _TDispID _dispid(/* ksGetFullPathFromSystemPath */ DISPID(47));
    TAutoArgs<2> _args;
    _args[1] = relativePath /*[VT_BSTR:0]*/;
    _args[2] = pathType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksGetRelativePathFromFullPath(BSTR mainFilePath, BSTR sourcePath)
  {
    _TDispID _dispid(/* ksGetRelativePathFromFullPath */ DISPID(48));
    TAutoArgs<2> _args;
    _args[1] = mainFilePath /*[VT_BSTR:0]*/;
    _args[2] = sourcePath /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksGetFullPathFromRelativePath(BSTR mainFilePath, BSTR relativePath)
  {
    _TDispID _dispid(/* ksGetFullPathFromRelativePath */ DISPID(49));
    TAutoArgs<2> _args;
    _args[1] = mainFilePath /*[VT_BSTR:0]*/;
    _args[2] = relativePath /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetSystemVersion(long* iMajor, long* iMinor, long* iRelease, long* iBuild)
  {
    _TDispID _dispid(/* ksGetSystemVersion */ DISPID(50));
    TAutoArgs<4> _args;
    _args[1] = iMajor /*[VT_I4:1]*/;
    _args[2] = iMinor /*[VT_I4:1]*/;
    _args[3] = iRelease /*[VT_I4:1]*/;
    _args[4] = iBuild /*[VT_I4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksGetSystemProfileString(BSTR lpSection, BSTR lpKey)
  {
    _TDispID _dispid(/* ksGetSystemProfileString */ DISPID(51));
    TAutoArgs<2> _args;
    _args[1] = lpSection /*[VT_BSTR:0]*/;
    _args[2] = lpKey /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksOpenHelpFile(BSTR file, long command, long iD)
  {
    _TDispID _dispid(/* ksOpenHelpFile */ DISPID(52));
    TAutoArgs<3> _args;
    _args[1] = file /*[VT_BSTR:0]*/;
    _args[2] = command /*[VT_I4:0]*/;
    _args[3] = iD /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetSysOptions(long optionsType, LPDISPATCH param)
  {
    _TDispID _dispid(/* ksSetSysOptions */ DISPID(53));
    TAutoArgs<2> _args;
    _args[1] = optionsType /*[VT_I4:0]*/;
    _args[2] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetSysOptions(long optionsType, LPDISPATCH param)
  {
    _TDispID _dispid(/* ksGetSysOptions */ DISPID(54));
    TAutoArgs<2> _args;
    _args[1] = optionsType /*[VT_I4:0]*/;
    _args[2] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksPrintPreviewWindow(LPDISPATCH docsArr, long inquiry)
  {
    _TDispID _dispid(/* ksPrintPreviewWindow */ DISPID(55));
    TAutoArgs<2> _args;
    _args[1] = docsArr /*[VT_DISPATCH:0]*/;
    _args[2] = inquiry /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ksGetLibraryStylesArray(BSTR libraryName, short libraryType)
  {
    _TDispID _dispid(/* ksGetLibraryStylesArray */ DISPID(56));
    TAutoArgs<2> _args;
    _args[1] = libraryName /*[VT_BSTR:0]*/;
    _args[2] = libraryType /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksViewGetDensity(long HWindow)
  {
    _TDispID _dispid(/* ksViewGetDensity */ DISPID(57));
    TAutoArgs<1> _args;
    _args[1] = HWindow /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCalculate(BSTR s, double* rez)
  {
    _TDispID _dispid(/* ksCalculate */ DISPID(58));
    TAutoArgs<2> _args;
    _args[1] = s /*[VT_BSTR:0]*/;
    _args[2] = rez /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCalculateReset()
  {
    _TDispID _dispid(/* ksCalculateReset */ DISPID(59));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksExecuteLibraryCommand(BSTR fileName, long command)
  {
    _TDispID _dispid(/* ksExecuteLibraryCommand */ DISPID(60));
    TAutoArgs<2> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = command /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetQualityNames(LPDISPATCH names, double dimValue, double high, double low, 
                                    short system, short withLimitation)
  {
    _TDispID _dispid(/* ksGetQualityNames */ DISPID(61));
    TAutoArgs<6> _args;
    _args[1] = names /*[VT_DISPATCH:0]*/;
    _args[2] = dimValue /*[VT_R8:0]*/;
    _args[3] = high /*[VT_R8:0]*/;
    _args[4] = low /*[VT_R8:0]*/;
    _args[5] = system /*[VT_I2:0]*/;
    _args[6] = withLimitation /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetQualityDefects(BSTR name, double dimValue, double* high, double* low, 
                                      short inMM)
  {
    _TDispID _dispid(/* ksGetQualityDefects */ DISPID(62));
    TAutoArgs<5> _args;
    _args[1] = name /*[VT_BSTR:0]*/;
    _args[2] = dimValue /*[VT_R8:0]*/;
    _args[3] = high /*[VT_R8:1]*/;
    _args[4] = low /*[VT_R8:1]*/;
    _args[5] = inMM /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetQualityContensParam(BSTR name, LPDISPATCH param, short inMM)
  {
    _TDispID _dispid(/* ksGetQualityContensParam */ DISPID(63));
    TAutoArgs<3> _args;
    _args[1] = name /*[VT_BSTR:0]*/;
    _args[2] = param /*[VT_DISPATCH:0]*/;
    _args[3] = inMM /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ksGet3dDocumentFromRef(long doc)
  {
    _TDispID _dispid(/* ksGet3dDocumentFromRef */ DISPID(64));
    TAutoArgs<1> _args;
    _args[1] = doc /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetModelLibrary()
  {
    _TDispID _dispid(/* GetModelLibrary */ DISPID(65));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetFragmentLibrary()
  {
    _TDispID _dispid(/* GetFragmentLibrary */ DISPID(66));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksIsLibraryEnabled(BSTR libName)
  {
    _TDispID _dispid(/* ksIsLibraryEnabled */ DISPID(67));
    TAutoArgs<1> _args;
    _args[1] = libName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksIsModuleSpecificationActive()
  {
    _TDispID _dispid(/* ksIsModuleSpecificationActive */ DISPID(68));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksModuleSpecification(TOLEBOOL attach)
  {
    _TDispID _dispid(/* ksModuleSpecification */ DISPID(69));
    TAutoArgs<1> _args;
    _args[1] = attach /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksMaterialDlg(long HWindow, long* res, double* plt, double* kod_size_1, 
                                double* kod_size_2, double* kod_size_3, double* kod_size_4, 
                                BSTR kod_tip)
  {
    _TDispID _dispid(/* ksMaterialDlg */ DISPID(70));
    TAutoArgs<8> _args;
    _args[1] = HWindow /*[VT_I4:0]*/;
    _args[2] = res /*[VT_I4:1]*/;
    _args[3] = plt /*[VT_R8:1]*/;
    _args[4] = kod_size_1 /*[VT_R8:1]*/;
    _args[5] = kod_size_2 /*[VT_R8:1]*/;
    _args[6] = kod_size_3 /*[VT_R8:1]*/;
    _args[7] = kod_size_4 /*[VT_R8:1]*/;
    _args[8] = kod_tip /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksExecDialPredefinedText(long HWindow, long* res)
  {
    _TDispID _dispid(/* ksExecDialPredefinedText */ DISPID(71));
    TAutoArgs<2> _args;
    _args[1] = HWindow /*[VT_I4:0]*/;
    _args[2] = res /*[VT_I4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDrawSlideEx(long HWindow, long sldID, long hInst)
  {
    _TDispID _dispid(/* ksDrawSlideEx */ DISPID(72));
    TAutoArgs<3> _args;
    _args[1] = HWindow /*[VT_I4:0]*/;
    _args[2] = sldID /*[VT_I4:0]*/;
    _args[3] = hInst /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksViewGetDensityAndMaterial(double* density, long HWindow)
  {
    _TDispID _dispid(/* ksViewGetDensityAndMaterial */ DISPID(73));
    TAutoArgs<2> _args;
    _args[1] = density /*[VT_R8:1]*/;
    _args[2] = HWindow /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksConvertLangStr(BSTR src)
  {
    _TDispID _dispid(/* ksConvertLangStr */ DISPID(74));
    TAutoArgs<1> _args;
    _args[1] = src /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksConvertLangWindow(long hWnd)
  {
    _TDispID _dispid(/* ksConvertLangWindow */ DISPID(75));
    TAutoArgs<1> _args;
    _args[1] = hWnd /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksConvertLangMenu(long hMenu)
  {
    _TDispID _dispid(/* ksConvertLangMenu */ DISPID(76));
    TAutoArgs<1> _args;
    _args[1] = hMenu /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksEditTextLine(long HWindow, long* res, BSTR str)
  {
    _TDispID _dispid(/* ksEditTextLine */ DISPID(77));
    TAutoArgs<3> _args;
    _args[1] = HWindow /*[VT_I4:0]*/;
    _args[2] = res /*[VT_I4:1]*/;
    _args[3] = str /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetDocOptions(long optionsType, LPDISPATCH param)
  {
    _TDispID _dispid(/* ksGetDocOptions */ DISPID(78));
    TAutoArgs<2> _args;
    _args[1] = optionsType /*[VT_I4:0]*/;
    _args[2] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksAttachKompasLibrary(BSTR libName)
  {
    _TDispID _dispid(/* ksAttachKompasLibrary */ DISPID(79));
    TAutoArgs<1> _args;
    _args[1] = libName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDetachKompasLibrary(long libId)
  {
    _TDispID _dispid(/* ksDetachKompasLibrary */ DISPID(80));
    TAutoArgs<1> _args;
    _args[1] = libId /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksExecuteKompasLibraryCommand(long libId, long command)
  {
    _TDispID _dispid(/* ksExecuteKompasLibraryCommand */ DISPID(81));
    TAutoArgs<2> _args;
    _args[1] = libId /*[VT_I4:0]*/;
    _args[2] = command /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall Quit()
  {
    _TDispID _dispid(/* Quit */ DISPID(82));
    OleProcedure(_dispid);
  }

  long __fastcall ksPrintKompasDocument(BSTR fileName, BSTR toFile, double scale)
  {
    _TDispID _dispid(/* ksPrintKompasDocument */ DISPID(83));
    TAutoArgs<3> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = toFile /*[VT_BSTR:0]*/;
    _args[3] = scale /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDrawKompasDocument(long HWindow, BSTR docFileName)
  {
    _TDispID _dispid(/* ksDrawKompasDocument */ DISPID(84));
    TAutoArgs<2> _args;
    _args[1] = HWindow /*[VT_I4:0]*/;
    _args[2] = docFileName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksSetFlagDisableLockApp(TOLEBOOL setDisableLockApp)
  {
    _TDispID _dispid(/* ksSetFlagDisableLockApp */ DISPID(85));
    TAutoArgs<1> _args;
    _args[1] = setDisableLockApp /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ActivateControllerAPI()
  {
    _TDispID _dispid(/* ActivateControllerAPI */ DISPID(86));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall DocumentTxt()
  {
    _TDispID _dispid(/* DocumentTxt */ DISPID(87));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ActiveDocumentTxt()
  {
    _TDispID _dispid(/* ActiveDocumentTxt */ DISPID(88));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksGetLibraryTreeStruct(BSTR libName, LPDISPATCH p)
  {
    _TDispID _dispid(/* ksGetLibraryTreeStruct */ DISPID(89));
    TAutoArgs<2> _args;
    _args[1] = libName /*[VT_BSTR:0]*/;
    _args[2] = p /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetDocOptions(long optionsType, LPDISPATCH param)
  {
    _TDispID _dispid(/* ksSetDocOptions */ DISPID(90));
    TAutoArgs<2> _args;
    _args[1] = optionsType /*[VT_I4:0]*/;
    _args[2] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetDocumentType(long doc/*[def,opt]*/)
  {
    _TDispID _dispid(/* ksGetDocumentType */ DISPID(91));
    TAutoArgs<1> _args;
    _args[1] = doc /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDrawKompasDocumentByReference(long HWindow, long pDoc)
  {
    _TDispID _dispid(/* ksDrawKompasDocumentByReference */ DISPID(92));
    TAutoArgs<2> _args;
    _args[1] = HWindow /*[VT_I4:0]*/;
    _args[2] = pDoc /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ksExecDialPredefinedTextEx(long HWindow)
  {
    _TDispID _dispid(/* ksExecDialPredefinedTextEx */ DISPID(93));
    TAutoArgs<1> _args;
    _args[1] = HWindow /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetDocumentTypeByName(BSTR fileName)
  {
    _TDispID _dispid(/* ksGetDocumentTypeByName */ DISPID(94));
    TAutoArgs<1> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ksGetDocumentByReference(long docRef)
  {
    _TDispID _dispid(/* ksGetDocumentByReference */ DISPID(95));
    TAutoArgs<1> _args;
    _args[1] = docRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksConvertLangStrEx(long hInstance, long strID)
  {
    _TDispID _dispid(/* ksConvertLangStrEx */ DISPID(96));
    TAutoArgs<2> _args;
    _args[1] = hInstance /*[VT_I4:0]*/;
    _args[2] = strID /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksConvertLangWindowEx(long hWnd, long hInstance, BSTR dlgID)
  {
    _TDispID _dispid(/* ksConvertLangWindowEx */ DISPID(97));
    TAutoArgs<3> _args;
    _args[1] = hWnd /*[VT_I4:0]*/;
    _args[2] = hInstance /*[VT_I4:0]*/;
    _args[3] = dlgID /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall LoadDSK()
  {
    _TDispID _dispid(/* LoadDSK */ DISPID(98));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetObjectsFilter3D()
  {
    _TDispID _dispid(/* GetObjectsFilter3D */ DISPID(100));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksExecuteKompasLibraryCommandEx(long libId, long command, LPDISPATCH external)
  {
    _TDispID _dispid(/* ksExecuteKompasLibraryCommandEx */ DISPID(101));
    TAutoArgs<3> _args;
    _args[1] = libId /*[VT_I4:0]*/;
    _args[2] = command /*[VT_I4:0]*/;
    _args[3] = external /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ksGetExternaldispinterface()
  {
    _TDispID _dispid(/* ksGetExternaldispinterface */ DISPID(102));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ksGetApplication7()
  {
    _TDispID _dispid(/* ksGetApplication7 */ DISPID(103));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDrawBitmapEx(long HWindow, long bmpID, long hInst)
  {
    _TDispID _dispid(/* ksDrawBitmapEx */ DISPID(104));
    TAutoArgs<3> _args;
    _args[1] = HWindow /*[VT_I4:0]*/;
    _args[2] = bmpID /*[VT_I4:0]*/;
    _args[3] = hInst /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetSystemControlStartResult()
  {
    _TDispID _dispid(/* ksGetSystemControlStartResult */ DISPID(105));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksIsModule3DActive()
  {
    _TDispID _dispid(/* ksIsModule3DActive */ DISPID(106));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksModule3D(TOLEBOOL attach)
  {
    _TDispID _dispid(/* ksModule3D */ DISPID(107));
    TAutoArgs<1> _args;
    _args[1] = attach /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPUNKNOWN __fastcall TransferInterface(LPUNKNOWN obj, long apiNewType, long objNewType)
  {
    _TDispID _dispid(/* TransferInterface */ DISPID(108));
    TAutoArgs<3> _args;
    _args[1] = obj /*[VT_UNKNOWN:0]*/;
    _args[2] = apiNewType /*[VT_I4:0]*/;
    _args[3] = objNewType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksExecuteKompasCommand(long commandID, TOLEBOOL post)
  {
    _TDispID _dispid(/* ksExecuteKompasCommand */ DISPID(109));
    TAutoArgs<2> _args;
    _args[1] = commandID /*[VT_I4:0]*/;
    _args[2] = post /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksIsKompasCommandEnable(long commandID)
  {
    _TDispID _dispid(/* ksIsKompasCommandEnable */ DISPID(110));
    TAutoArgs<1> _args;
    _args[1] = commandID /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksIsKompasCommandCheck(long commandID)
  {
    _TDispID _dispid(/* ksIsKompasCommandCheck */ DISPID(111));
    TAutoArgs<1> _args;
    _args[1] = commandID /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPUNKNOWN __fastcall TransferReference(long obj, long docRef)
  {
    _TDispID _dispid(/* TransferReference */ DISPID(112));
    TAutoArgs<2> _args;
    _args[1] = obj /*[VT_I4:0]*/;
    _args[2] = docRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDrawKompasText(long HWindow, BSTR text)
  {
    _TDispID _dispid(/* ksDrawKompasText */ DISPID(113));
    TAutoArgs<2> _args;
    _args[1] = HWindow /*[VT_I4:0]*/;
    _args[2] = text /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksPrintKompasDocumentEx(BSTR fileName, BSTR toFile, double scale, 
                                          TOLEBOOL FKompasPrinter)
  {
    _TDispID _dispid(/* ksPrintKompasDocumentEx */ DISPID(114));
    TAutoArgs<4> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = toFile /*[VT_BSTR:0]*/;
    _args[3] = scale /*[VT_R8:0]*/;
    _args[4] = FKompasPrinter /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  int __fastcall ksExecDialSpecialSymbol(long HWindow)
  {
    _TDispID _dispid(/* ksExecDialSpecialSymbol */ DISPID(115));
    TAutoArgs<1> _args;
    _args[1] = HWindow /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksExecDialSymbol(long HWindow, long* symb, BSTR font)
  {
    _TDispID _dispid(/* ksExecDialSymbol */ DISPID(116));
    TAutoArgs<3> _args;
    _args[1] = HWindow /*[VT_I4:0]*/;
    _args[2] = symb /*[VT_I4:1]*/;
    _args[3] = font /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        Visible = {read = get_Visible, write = set_Visible};
  __property   long            lookStyle = {read = get_lookStyle, write = set_lookStyle};
};
// *********************************************************************//
// Interface: ksDocument2D
// Flags:     (4096) Dispatchable
// GUID:      {AF4E160D-5C89-4F21-B0F2-D53397BDAF78}
// *********************************************************************//
interface ksDocument2D : public TDispWrapper<IDispatch>
{
  void __fastcall set_reference(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* reference */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_reference()
  {
    _TDispID _dispid(/* reference */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_orthoMode(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* orthoMode */ DISPID(212));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_orthoMode()
  {
    _TDispID _dispid(/* orthoMode */ DISPID(212));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksLineSeg(double x1, double y1, double x2, double y2, long style)
  {
    _TDispID _dispid(/* ksLineSeg */ DISPID(2));
    TAutoArgs<5> _args;
    _args[1] = x1 /*[VT_R8:0]*/;
    _args[2] = y1 /*[VT_R8:0]*/;
    _args[3] = x2 /*[VT_R8:0]*/;
    _args[4] = y2 /*[VT_R8:0]*/;
    _args[5] = style /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksRectangle(LPDISPATCH par, short centre/*[def,opt]*/)
  {
    _TDispID _dispid(/* ksRectangle */ DISPID(3));
    TAutoArgs<2> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    _args[2] = centre /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCircle(double xc, double yc, double rad, long style)
  {
    _TDispID _dispid(/* ksCircle */ DISPID(4));
    TAutoArgs<4> _args;
    _args[1] = xc /*[VT_R8:0]*/;
    _args[2] = yc /*[VT_R8:0]*/;
    _args[3] = rad /*[VT_R8:0]*/;
    _args[4] = style /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksArcByAngle(double xc, double yc, double rad, double f1, double f2, 
                               short direction, long style)
  {
    _TDispID _dispid(/* ksArcByAngle */ DISPID(5));
    TAutoArgs<7> _args;
    _args[1] = xc /*[VT_R8:0]*/;
    _args[2] = yc /*[VT_R8:0]*/;
    _args[3] = rad /*[VT_R8:0]*/;
    _args[4] = f1 /*[VT_R8:0]*/;
    _args[5] = f2 /*[VT_R8:0]*/;
    _args[6] = direction /*[VT_I2:0]*/;
    _args[7] = style /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksArcByPoint(double xc, double yc, double rad, double x1, double y1, double x2, 
                               double y2, short direction, long style)
  {
    _TDispID _dispid(/* ksArcByPoint */ DISPID(6));
    TAutoArgs<9> _args;
    _args[1] = xc /*[VT_R8:0]*/;
    _args[2] = yc /*[VT_R8:0]*/;
    _args[3] = rad /*[VT_R8:0]*/;
    _args[4] = x1 /*[VT_R8:0]*/;
    _args[5] = y1 /*[VT_R8:0]*/;
    _args[6] = x2 /*[VT_R8:0]*/;
    _args[7] = y2 /*[VT_R8:0]*/;
    _args[8] = direction /*[VT_I2:0]*/;
    _args[9] = style /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksArcBy3Points(double x1, double y1, double x2, double y2, double x3, double y3, 
                                 long style)
  {
    _TDispID _dispid(/* ksArcBy3Points */ DISPID(7));
    TAutoArgs<7> _args;
    _args[1] = x1 /*[VT_R8:0]*/;
    _args[2] = y1 /*[VT_R8:0]*/;
    _args[3] = x2 /*[VT_R8:0]*/;
    _args[4] = y2 /*[VT_R8:0]*/;
    _args[5] = x3 /*[VT_R8:0]*/;
    _args[6] = y3 /*[VT_R8:0]*/;
    _args[7] = style /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetObjParam(long ref, LPDISPATCH param, long parType/*[def,opt]*/)
  {
    _TDispID _dispid(/* ksGetObjParam */ DISPID(8));
    TAutoArgs<3> _args;
    _args[1] = ref /*[VT_I4:0]*/;
    _args[2] = param /*[VT_DISPATCH:0]*/;
    _args[3] = parType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetObjParam(long referObj, LPDISPATCH param, long parType/*[def,opt]*/)
  {
    _TDispID _dispid(/* ksSetObjParam */ DISPID(9));
    TAutoArgs<3> _args;
    _args[1] = referObj /*[VT_I4:0]*/;
    _args[2] = param /*[VT_DISPATCH:0]*/;
    _args[3] = parType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksContour(long style)
  {
    _TDispID _dispid(/* ksContour */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = style /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksMacro(short type)
  {
    _TDispID _dispid(/* ksMacro */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = type /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksParagraph(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksParagraph */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksTextLine(LPDISPATCH textItem)
  {
    _TDispID _dispid(/* ksTextLine */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = textItem /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksUpdateMacro(long macro, long gr)
  {
    _TDispID _dispid(/* ksUpdateMacro */ DISPID(14));
    TAutoArgs<2> _args;
    _args[1] = macro /*[VT_I4:0]*/;
    _args[2] = gr /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksLine(double x, double y, double angle)
  {
    _TDispID _dispid(/* ksLine */ DISPID(15));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = angle /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksPoint(double x, double y, long style)
  {
    _TDispID _dispid(/* ksPoint */ DISPID(16));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = style /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksText(double x, double y, double ang, double hStr, double ksuStr, long bitVector
                         , BSTR s)
  {
    _TDispID _dispid(/* ksText */ DISPID(17));
    TAutoArgs<7> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = ang /*[VT_R8:0]*/;
    _args[4] = hStr /*[VT_R8:0]*/;
    _args[5] = ksuStr /*[VT_R8:0]*/;
    _args[6] = bitVector /*[VT_I4:0]*/;
    _args[7] = s /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksHatchByParam(LPDISPATCH param)
  {
    _TDispID _dispid(/* ksHatchByParam */ DISPID(18));
    TAutoArgs<1> _args;
    _args[1] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksEndObj()
  {
    _TDispID _dispid(/* ksEndObj */ DISPID(19));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksLayer(long n)
  {
    _TDispID _dispid(/* ksLayer */ DISPID(20));
    TAutoArgs<1> _args;
    _args[1] = n /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetLayerNumber(long p)
  {
    _TDispID _dispid(/* ksGetLayerNumber */ DISPID(21));
    TAutoArgs<1> _args;
    _args[1] = p /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetLayerReference(long number)
  {
    _TDispID _dispid(/* ksGetLayerReference */ DISPID(22));
    TAutoArgs<1> _args;
    _args[1] = number /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksChangeObjectLayer(long obj, long number)
  {
    _TDispID _dispid(/* ksChangeObjectLayer */ DISPID(23));
    TAutoArgs<2> _args;
    _args[1] = obj /*[VT_I4:0]*/;
    _args[2] = number /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksNewGroup(short type)
  {
    _TDispID _dispid(/* ksNewGroup */ DISPID(24));
    TAutoArgs<1> _args;
    _args[1] = type /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksEndGroup()
  {
    _TDispID _dispid(/* ksEndGroup */ DISPID(25));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksMakeEncloseContours(long gr, double x, double y)
  {
    _TDispID _dispid(/* ksMakeEncloseContours */ DISPID(26));
    TAutoArgs<3> _args;
    _args[1] = gr /*[VT_I4:0]*/;
    _args[2] = x /*[VT_R8:0]*/;
    _args[3] = y /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksIsCursorOrPlacementDocument()
  {
    _TDispID _dispid(/* ksIsCursorOrPlacementDocument */ DISPID(27));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksIsActiveProcessRunnig()
  {
    _TDispID _dispid(/* ksIsActiveProcessRunnig */ DISPID(28));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksPhantomShowHide(BSTR show)
  {
    _TDispID _dispid(/* ksPhantomShowHide */ DISPID(29));
    TAutoArgs<1> _args;
    _args[1] = show /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetCursorPosition(double* x, double* y, long type)
  {
    _TDispID _dispid(/* ksGetCursorPosition */ DISPID(30));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    _args[3] = type /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksKeepReference(long r)
  {
    _TDispID _dispid(/* ksKeepReference */ DISPID(31));
    TAutoArgs<1> _args;
    _args[1] = r /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetMacroParamSize(long ref)
  {
    _TDispID _dispid(/* ksGetMacroParamSize */ DISPID(32));
    TAutoArgs<1> _args;
    _args[1] = ref /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksEditMacroMode()
  {
    _TDispID _dispid(/* ksEditMacroMode */ DISPID(33));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDeleteObj(long ref)
  {
    _TDispID _dispid(/* ksDeleteObj */ DISPID(34));
    TAutoArgs<1> _args;
    _args[1] = ref /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksMoveObj(long ref, double x, double y)
  {
    _TDispID _dispid(/* ksMoveObj */ DISPID(35));
    TAutoArgs<3> _args;
    _args[1] = ref /*[VT_I4:0]*/;
    _args[2] = x /*[VT_R8:0]*/;
    _args[3] = y /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksRotateObj(long ref, double x, double y, double angle)
  {
    _TDispID _dispid(/* ksRotateObj */ DISPID(36));
    TAutoArgs<4> _args;
    _args[1] = ref /*[VT_I4:0]*/;
    _args[2] = x /*[VT_R8:0]*/;
    _args[3] = y /*[VT_R8:0]*/;
    _args[4] = angle /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksTransformObj(long ref)
  {
    _TDispID _dispid(/* ksTransformObj */ DISPID(37));
    TAutoArgs<1> _args;
    _args[1] = ref /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksLightObj(long ref, short light)
  {
    _TDispID _dispid(/* ksLightObj */ DISPID(38));
    TAutoArgs<2> _args;
    _args[1] = ref /*[VT_I4:0]*/;
    _args[2] = light /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksFindObj(double x, double y, double limit)
  {
    _TDispID _dispid(/* ksFindObj */ DISPID(39));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = limit /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSymmetryObj(long ref, double x1, double y1, double x2, double y2, BSTR copy)
  {
    _TDispID _dispid(/* ksSymmetryObj */ DISPID(40));
    TAutoArgs<6> _args;
    _args[1] = ref /*[VT_I4:0]*/;
    _args[2] = x1 /*[VT_R8:0]*/;
    _args[3] = y1 /*[VT_R8:0]*/;
    _args[4] = x2 /*[VT_R8:0]*/;
    _args[5] = y2 /*[VT_R8:0]*/;
    _args[6] = copy /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCopyObj(long ref, double xOld, double yOld, double xNew, double yNew, 
                            double scale, double angle)
  {
    _TDispID _dispid(/* ksCopyObj */ DISPID(41));
    TAutoArgs<7> _args;
    _args[1] = ref /*[VT_I4:0]*/;
    _args[2] = xOld /*[VT_R8:0]*/;
    _args[3] = yOld /*[VT_R8:0]*/;
    _args[4] = xNew /*[VT_R8:0]*/;
    _args[5] = yNew /*[VT_R8:0]*/;
    _args[6] = scale /*[VT_R8:0]*/;
    _args[7] = angle /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCreateViewObject(long type)
  {
    _TDispID _dispid(/* ksCreateViewObject */ DISPID(42));
    TAutoArgs<1> _args;
    _args[1] = type /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksEditViewObject(long ref)
  {
    _TDispID _dispid(/* ksEditViewObject */ DISPID(43));
    TAutoArgs<1> _args;
    _args[1] = ref /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksAnnLineSeg(double x1, double y1, double x2, double y2, short term1, short term2
                               , long style)
  {
    _TDispID _dispid(/* ksAnnLineSeg */ DISPID(44));
    TAutoArgs<7> _args;
    _args[1] = x1 /*[VT_R8:0]*/;
    _args[2] = y1 /*[VT_R8:0]*/;
    _args[3] = x2 /*[VT_R8:0]*/;
    _args[4] = y2 /*[VT_R8:0]*/;
    _args[5] = term1 /*[VT_I2:0]*/;
    _args[6] = term2 /*[VT_I2:0]*/;
    _args[7] = style /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksPointArraw(double x, double y, double ang, short term)
  {
    _TDispID _dispid(/* ksPointArraw */ DISPID(45));
    TAutoArgs<4> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = ang /*[VT_R8:0]*/;
    _args[4] = term /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksAnnArcByPoint(double xc, double yc, double rad, double x1, double y1, double x2
                                  , double y2, short direction, short term1, short term2, long style)
  {
    _TDispID _dispid(/* ksAnnArcByPoint */ DISPID(46));
    TAutoArgs<11> _args;
    _args[1] = xc /*[VT_R8:0]*/;
    _args[2] = yc /*[VT_R8:0]*/;
    _args[3] = rad /*[VT_R8:0]*/;
    _args[4] = x1 /*[VT_R8:0]*/;
    _args[5] = y1 /*[VT_R8:0]*/;
    _args[6] = x2 /*[VT_R8:0]*/;
    _args[7] = y2 /*[VT_R8:0]*/;
    _args[8] = direction /*[VT_I2:0]*/;
    _args[9] = term1 /*[VT_I2:0]*/;
    _args[10] = term2 /*[VT_I2:0]*/;
    _args[11] = style /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksEllipse(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksEllipse */ DISPID(47));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksEllipseArc(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksEllipseArc */ DISPID(48));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksParEllipseArc(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksParEllipseArc */ DISPID(49));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksEquidistant(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksEquidistant */ DISPID(50));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksIsPointInsideContour(long p, double x, double y, double precision)
  {
    _TDispID _dispid(/* ksIsPointInsideContour */ DISPID(51));
    TAutoArgs<4> _args;
    _args[1] = p /*[VT_I4:0]*/;
    _args[2] = x /*[VT_R8:0]*/;
    _args[3] = y /*[VT_R8:0]*/;
    _args[4] = precision /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksConvertTextToCurve(long text)
  {
    _TDispID _dispid(/* ksConvertTextToCurve */ DISPID(52));
    TAutoArgs<1> _args;
    _args[1] = text /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksStoreTmpGroup(long g)
  {
    _TDispID _dispid(/* ksStoreTmpGroup */ DISPID(53));
    TAutoArgs<1> _args;
    _args[1] = g /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksOpenMacro(long macro)
  {
    _TDispID _dispid(/* ksOpenMacro */ DISPID(54));
    TAutoArgs<1> _args;
    _args[1] = macro /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksAddObjectToMacro(long macro, long obj)
  {
    _TDispID _dispid(/* ksAddObjectToMacro */ DISPID(55));
    TAutoArgs<2> _args;
    _args[1] = macro /*[VT_I4:0]*/;
    _args[2] = obj /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksHatch(long style, double angle, double step, double width, double x0, double y0)
  {
    _TDispID _dispid(/* ksHatch */ DISPID(56));
    TAutoArgs<6> _args;
    _args[1] = style /*[VT_I4:0]*/;
    _args[2] = angle /*[VT_R8:0]*/;
    _args[3] = step /*[VT_R8:0]*/;
    _args[4] = width /*[VT_R8:0]*/;
    _args[5] = x0 /*[VT_R8:0]*/;
    _args[6] = y0 /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksColouring(long color)
  {
    _TDispID _dispid(/* ksColouring */ DISPID(57));
    TAutoArgs<1> _args;
    _args[1] = color /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDuplicateBoundaries(long p)
  {
    _TDispID _dispid(/* ksDuplicateBoundaries */ DISPID(58));
    TAutoArgs<1> _args;
    _args[1] = p /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksNurbsPoint(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksNurbsPoint */ DISPID(59));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksNurbsKnot(double knot)
  {
    _TDispID _dispid(/* ksNurbsKnot */ DISPID(60));
    TAutoArgs<1> _args;
    _args[1] = knot /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksNurbs(short degree, TOLEBOOL close, long style)
  {
    _TDispID _dispid(/* ksNurbs */ DISPID(61));
    TAutoArgs<3> _args;
    _args[1] = degree /*[VT_I2:0]*/;
    _args[2] = close /*[VT_BOOL:0]*/;
    _args[3] = style /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksRegularPolygon(LPDISPATCH par, short centre/*[def,opt]*/)
  {
    _TDispID _dispid(/* ksRegularPolygon */ DISPID(62));
    TAutoArgs<2> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    _args[2] = centre /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksClearGroup(long g, TOLEBOOL deleteTmp)
  {
    _TDispID _dispid(/* ksClearGroup */ DISPID(63));
    TAutoArgs<2> _args;
    _args[1] = g /*[VT_I4:0]*/;
    _args[2] = deleteTmp /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksExcludeObjGroup(long g, long p)
  {
    _TDispID _dispid(/* ksExcludeObjGroup */ DISPID(64));
    TAutoArgs<2> _args;
    _args[1] = g /*[VT_I4:0]*/;
    _args[2] = p /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksAddObjGroup(long g, long p)
  {
    _TDispID _dispid(/* ksAddObjGroup */ DISPID(65));
    TAutoArgs<2> _args;
    _args[1] = g /*[VT_I4:0]*/;
    _args[2] = p /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSaveGroup(long g, BSTR name)
  {
    _TDispID _dispid(/* ksSaveGroup */ DISPID(66));
    TAutoArgs<2> _args;
    _args[1] = g /*[VT_I4:0]*/;
    _args[2] = name /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSelectGroup(long g, short selectMode, double xmin, double ymin, double xmax, 
                                double ymax)
  {
    _TDispID _dispid(/* ksSelectGroup */ DISPID(67));
    TAutoArgs<6> _args;
    _args[1] = g /*[VT_I4:0]*/;
    _args[2] = selectMode /*[VT_I2:0]*/;
    _args[3] = xmin /*[VT_R8:0]*/;
    _args[4] = ymin /*[VT_R8:0]*/;
    _args[5] = xmax /*[VT_R8:0]*/;
    _args[6] = ymax /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksExistGroupObj(long g)
  {
    _TDispID _dispid(/* ksExistGroupObj */ DISPID(68));
    TAutoArgs<1> _args;
    _args[1] = g /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksWriteGroupToClip(long g, TOLEBOOL copy)
  {
    _TDispID _dispid(/* ksWriteGroupToClip */ DISPID(69));
    TAutoArgs<2> _args;
    _args[1] = g /*[VT_I4:0]*/;
    _args[2] = copy /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetGroup(BSTR name)
  {
    _TDispID _dispid(/* ksGetGroup */ DISPID(70));
    TAutoArgs<1> _args;
    _args[1] = name /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksReadGroupFromClip()
  {
    _TDispID _dispid(/* ksReadGroupFromClip */ DISPID(71));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksConicArc(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksConicArc */ DISPID(72));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCentreMarker(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksCentreMarker */ DISPID(73));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksBezier(short closed, long style)
  {
    _TDispID _dispid(/* ksBezier */ DISPID(74));
    TAutoArgs<2> _args;
    _args[1] = closed /*[VT_I2:0]*/;
    _args[2] = style /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksBezierPoint(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksBezierPoint */ DISPID(75));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetStyleParam(short type, short styleId, LPDISPATCH param)
  {
    _TDispID _dispid(/* ksGetStyleParam */ DISPID(76));
    TAutoArgs<3> _args;
    _args[1] = type /*[VT_I2:0]*/;
    _args[2] = styleId /*[VT_I2:0]*/;
    _args[3] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksInsertRaster(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksInsertRaster */ DISPID(77));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksLinDimension(LPDISPATCH linPar)
  {
    _TDispID _dispid(/* ksLinDimension */ DISPID(78));
    TAutoArgs<1> _args;
    _args[1] = linPar /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksAngDimension(LPDISPATCH angPar)
  {
    _TDispID _dispid(/* ksAngDimension */ DISPID(79));
    TAutoArgs<1> _args;
    _args[1] = angPar /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDiamDimension(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksDiamDimension */ DISPID(80));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksRadDimension(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksRadDimension */ DISPID(81));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksRadBreakDimension(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksRadBreakDimension */ DISPID(82));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksOrdinatedDimension(LPDISPATCH ordPar)
  {
    _TDispID _dispid(/* ksOrdinatedDimension */ DISPID(83));
    TAutoArgs<1> _args;
    _args[1] = ordPar /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksAddStyle(short type, LPDISPATCH param, short copy)
  {
    _TDispID _dispid(/* ksAddStyle */ DISPID(84));
    TAutoArgs<3> _args;
    _args[1] = type /*[VT_I2:0]*/;
    _args[2] = param /*[VT_DISPATCH:0]*/;
    _args[3] = copy /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksIsStyleInDocument(short type, LPDISPATCH param, short copy)
  {
    _TDispID _dispid(/* ksIsStyleInDocument */ DISPID(85));
    TAutoArgs<3> _args;
    _args[1] = type /*[VT_I2:0]*/;
    _args[2] = param /*[VT_DISPATCH:0]*/;
    _args[3] = copy /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDeleteStyleFromDocument(short type, LPDISPATCH param, short copy)
  {
    _TDispID _dispid(/* ksDeleteStyleFromDocument */ DISPID(86));
    TAutoArgs<3> _args;
    _args[1] = type /*[VT_I2:0]*/;
    _args[2] = param /*[VT_DISPATCH:0]*/;
    _args[3] = copy /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksExistObj(long ref)
  {
    _TDispID _dispid(/* ksExistObj */ DISPID(87));
    TAutoArgs<1> _args;
    _args[1] = ref /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetObjGabaritRect(long p, LPDISPATCH par)
  {
    _TDispID _dispid(/* ksGetObjGabaritRect */ DISPID(88));
    TAutoArgs<2> _args;
    _args[1] = p /*[VT_I4:0]*/;
    _args[2] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSheetToView(double x, double y, double* outX, double* outY)
  {
    _TDispID _dispid(/* ksSheetToView */ DISPID(89));
    TAutoArgs<4> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = outX /*[VT_R8:1]*/;
    _args[4] = outY /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksViewToSheet(double x, double y, double* outX, double* outY)
  {
    _TDispID _dispid(/* ksViewToSheet */ DISPID(90));
    TAutoArgs<4> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = outX /*[VT_R8:1]*/;
    _args[4] = outY /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksPolyline(long style)
  {
    _TDispID _dispid(/* ksPolyline */ DISPID(91));
    TAutoArgs<1> _args;
    _args[1] = style /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksPolylineByParam(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksPolylineByParam */ DISPID(92));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetReferenceDocumentPart(short t)
  {
    _TDispID _dispid(/* ksGetReferenceDocumentPart */ DISPID(93));
    TAutoArgs<1> _args;
    _args[1] = t /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetViewReference(long number)
  {
    _TDispID _dispid(/* ksGetViewReference */ DISPID(94));
    TAutoArgs<1> _args;
    _args[1] = number /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetViewNumber(long p)
  {
    _TDispID _dispid(/* ksGetViewNumber */ DISPID(95));
    TAutoArgs<1> _args;
    _args[1] = p /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksOpenView(long number)
  {
    _TDispID _dispid(/* ksOpenView */ DISPID(96));
    TAutoArgs<1> _args;
    _args[1] = number /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksNewViewNumber()
  {
    _TDispID _dispid(/* ksNewViewNumber */ DISPID(97));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCreateSheetView(LPDISPATCH par, long* number)
  {
    _TDispID _dispid(/* ksCreateSheetView */ DISPID(98));
    TAutoArgs<2> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    _args[2] = number /*[VT_I4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDecomposeObj(long p, short level, double arrow, short type)
  {
    _TDispID _dispid(/* ksDecomposeObj */ DISPID(99));
    TAutoArgs<4> _args;
    _args[1] = p /*[VT_I4:0]*/;
    _args[2] = level /*[VT_I2:0]*/;
    _args[3] = arrow /*[VT_R8:0]*/;
    _args[4] = type /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetViewObjCount(long p)
  {
    _TDispID _dispid(/* ksGetViewObjCount */ DISPID(100));
    TAutoArgs<1> _args;
    _args[1] = p /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksLinBreakDimension(LPDISPATCH linPar)
  {
    _TDispID _dispid(/* ksLinBreakDimension */ DISPID(101));
    TAutoArgs<1> _args;
    _args[1] = linPar /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksAngBreakDimension(LPDISPATCH angPar)
  {
    _TDispID _dispid(/* ksAngBreakDimension */ DISPID(102));
    TAutoArgs<1> _args;
    _args[1] = angPar /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksIsCurveClosed(long p)
  {
    _TDispID _dispid(/* ksIsCurveClosed */ DISPID(103));
    TAutoArgs<1> _args;
    _args[1] = p /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksBase(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksBase */ DISPID(104));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksRough(LPDISPATCH roughPar)
  {
    _TDispID _dispid(/* ksRough */ DISPID(105));
    TAutoArgs<1> _args;
    _args[1] = roughPar /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksGetGroupName(long gr, long* group, long size)
  {
    _TDispID _dispid(/* ksGetGroupName */ DISPID(106));
    TAutoArgs<3> _args;
    _args[1] = gr /*[VT_I4:0]*/;
    _args[2] = group /*[VT_I4:1]*/;
    _args[3] = size /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksMtr(double x, double y, double angle, double scaleX, double scaleY)
  {
    _TDispID _dispid(/* ksMtr */ DISPID(107));
    TAutoArgs<5> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = angle /*[VT_R8:0]*/;
    _args[4] = scaleX /*[VT_R8:0]*/;
    _args[5] = scaleY /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDeleteMtr()
  {
    _TDispID _dispid(/* ksDeleteMtr */ DISPID(108));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksPointIntoMtr(double x, double y, double* xn, double* yn)
  {
    _TDispID _dispid(/* ksPointIntoMtr */ DISPID(109));
    TAutoArgs<4> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = xn /*[VT_R8:1]*/;
    _args[4] = yn /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksPointFromMtr(double x, double y, double* xn, double* yn)
  {
    _TDispID _dispid(/* ksPointFromMtr */ DISPID(110));
    TAutoArgs<4> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = xn /*[VT_R8:1]*/;
    _args[4] = yn /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksLengthIntoMtr(double* len)
  {
    _TDispID _dispid(/* ksLengthIntoMtr */ DISPID(111));
    TAutoArgs<1> _args;
    _args[1] = len /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksLengthFromMtr(double* len)
  {
    _TDispID _dispid(/* ksLengthFromMtr */ DISPID(112));
    TAutoArgs<1> _args;
    _args[1] = len /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksLeader(LPDISPATCH leaderPar)
  {
    _TDispID _dispid(/* ksLeader */ DISPID(113));
    TAutoArgs<1> _args;
    _args[1] = leaderPar /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksPositionLeader(LPDISPATCH posLeaderParam)
  {
    _TDispID _dispid(/* ksPositionLeader */ DISPID(114));
    TAutoArgs<1> _args;
    _args[1] = posLeaderParam /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksBrandLeader(LPDISPATCH brandLeaderParam)
  {
    _TDispID _dispid(/* ksBrandLeader */ DISPID(115));
    TAutoArgs<1> _args;
    _args[1] = brandLeaderParam /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksMarkerLeader(LPDISPATCH markerLeaderParam)
  {
    _TDispID _dispid(/* ksMarkerLeader */ DISPID(116));
    TAutoArgs<1> _args;
    _args[1] = markerLeaderParam /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCursor(LPDISPATCH info, double* x, double* y, LPDISPATCH phantom)
  {
    _TDispID _dispid(/* ksCursor */ DISPID(117));
    TAutoArgs<4> _args;
    _args[1] = info /*[VT_DISPATCH:0]*/;
    _args[2] = x /*[VT_R8:1]*/;
    _args[3] = y /*[VT_R8:1]*/;
    _args[4] = phantom /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksPlacement(LPDISPATCH info, double* x, double* y, double* angle, 
                              LPDISPATCH phantom)
  {
    _TDispID _dispid(/* ksPlacement */ DISPID(118));
    TAutoArgs<5> _args;
    _args[1] = info /*[VT_DISPATCH:0]*/;
    _args[2] = x /*[VT_R8:1]*/;
    _args[3] = y /*[VT_R8:1]*/;
    _args[4] = angle /*[VT_R8:1]*/;
    _args[5] = phantom /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCommandWindow(LPDISPATCH info)
  {
    _TDispID _dispid(/* ksCommandWindow */ DISPID(119));
    TAutoArgs<1> _args;
    _args[1] = info /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksChangeObjectInLibRequest(LPDISPATCH info, LPDISPATCH phantom)
  {
    _TDispID _dispid(/* ksChangeObjectInLibRequest */ DISPID(120));
    TAutoArgs<2> _args;
    _args[1] = info /*[VT_DISPATCH:0]*/;
    _args[2] = phantom /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksReleaseReference(long p)
  {
    _TDispID _dispid(/* ksReleaseReference */ DISPID(121));
    TAutoArgs<1> _args;
    _args[1] = p /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetFragment()
  {
    _TDispID _dispid(/* GetFragment */ DISPID(122));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksInitFilePreviewFunc(BSTR funcName, long hInst, LPDISPATCH dispatchOCX)
  {
    _TDispID _dispid(/* ksInitFilePreviewFunc */ DISPID(123));
    TAutoArgs<3> _args;
    _args[1] = funcName /*[VT_BSTR:0]*/;
    _args[2] = hInst /*[VT_I4:0]*/;
    _args[3] = dispatchOCX /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksTable()
  {
    _TDispID _dispid(/* ksTable */ DISPID(124));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksRebuildTableVirtualGrid()
  {
    _TDispID _dispid(/* ksRebuildTableVirtualGrid */ DISPID(125));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetTableItemsCount(long type)
  {
    _TDispID _dispid(/* ksGetTableItemsCount */ DISPID(126));
    TAutoArgs<1> _args;
    _args[1] = type /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetTableColumnText(long* numb, LPDISPATCH par)
  {
    _TDispID _dispid(/* ksGetTableColumnText */ DISPID(127));
    TAutoArgs<2> _args;
    _args[1] = numb /*[VT_I4:1]*/;
    _args[2] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetTableColumnText(long numb, LPDISPATCH par)
  {
    _TDispID _dispid(/* ksSetTableColumnText */ DISPID(128));
    TAutoArgs<2> _args;
    _args[1] = numb /*[VT_I4:0]*/;
    _args[2] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksClearTableColumnText(long numb)
  {
    _TDispID _dispid(/* ksClearTableColumnText */ DISPID(129));
    TAutoArgs<1> _args;
    _args[1] = numb /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCombineTwoTableItems(long index1, long index2)
  {
    _TDispID _dispid(/* ksCombineTwoTableItems */ DISPID(130));
    TAutoArgs<2> _args;
    _args[1] = index1 /*[VT_I4:0]*/;
    _args[2] = index2 /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDivideTableItem(long index, TOLEBOOL vertical, long style)
  {
    _TDispID _dispid(/* ksDivideTableItem */ DISPID(131));
    TAutoArgs<3> _args;
    _args[1] = index /*[VT_I4:0]*/;
    _args[2] = vertical /*[VT_BOOL:0]*/;
    _args[3] = style /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetTableBorderStyle(long index, short typeBorder, long style)
  {
    _TDispID _dispid(/* ksSetTableBorderStyle */ DISPID(132));
    TAutoArgs<3> _args;
    _args[1] = index /*[VT_I4:0]*/;
    _args[2] = typeBorder /*[VT_I2:0]*/;
    _args[3] = style /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetTableBorderStyle(long index, short typeBorder)
  {
    _TDispID _dispid(/* ksGetTableBorderStyle */ DISPID(133));
    TAutoArgs<2> _args;
    _args[1] = index /*[VT_I4:0]*/;
    _args[2] = typeBorder /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksOpenTable(long table)
  {
    _TDispID _dispid(/* ksOpenTable */ DISPID(134));
    TAutoArgs<1> _args;
    _args[1] = table /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksColumnNumber(long numb)
  {
    _TDispID _dispid(/* ksColumnNumber */ DISPID(135));
    TAutoArgs<1> _args;
    _args[1] = numb /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetMacroParam(long ref, LPDISPATCH userPars, TOLEBOOL dblClickOff, 
                                  TOLEBOOL hotpoints, TOLEBOOL externEdit)
  {
    _TDispID _dispid(/* ksSetMacroParam */ DISPID(136));
    TAutoArgs<5> _args;
    _args[1] = ref /*[VT_I4:0]*/;
    _args[2] = userPars /*[VT_DISPATCH:0]*/;
    _args[3] = dblClickOff /*[VT_BOOL:0]*/;
    _args[4] = hotpoints /*[VT_BOOL:0]*/;
    _args[5] = externEdit /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetMacroParam(long ref, LPDISPATCH userPars)
  {
    _TDispID _dispid(/* ksGetMacroParam */ DISPID(137));
    TAutoArgs<2> _args;
    _args[1] = ref /*[VT_I4:0]*/;
    _args[2] = userPars /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksOpenTechnicalDemand(LPDISPATCH pGab, long style)
  {
    _TDispID _dispid(/* ksOpenTechnicalDemand */ DISPID(138));
    TAutoArgs<2> _args;
    _args[1] = pGab /*[VT_DISPATCH:0]*/;
    _args[2] = style /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCloseTechnicalDemand()
  {
    _TDispID _dispid(/* ksCloseTechnicalDemand */ DISPID(139));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSpecRough(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksSpecRough */ DISPID(140));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksViewPointer(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksViewPointer */ DISPID(141));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCutLine(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksCutLine */ DISPID(142));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksApproximationCurve(long p, double eps, TOLEBOOL curentLayer, double maxRad, 
                                       TOLEBOOL smooth)
  {
    _TDispID _dispid(/* ksApproximationCurve */ DISPID(143));
    TAutoArgs<5> _args;
    _args[1] = p /*[VT_I4:0]*/;
    _args[2] = eps /*[VT_R8:0]*/;
    _args[3] = curentLayer /*[VT_BOOL:0]*/;
    _args[4] = maxRad /*[VT_R8:0]*/;
    _args[5] = smooth /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksTolerance(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksTolerance */ DISPID(144));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksOpenTolerance(long tolerance)
  {
    _TDispID _dispid(/* ksOpenTolerance */ DISPID(145));
    TAutoArgs<1> _args;
    _args[1] = tolerance /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetToleranceColumnText(long* numb, LPDISPATCH par)
  {
    _TDispID _dispid(/* ksGetToleranceColumnText */ DISPID(146));
    TAutoArgs<2> _args;
    _args[1] = numb /*[VT_I4:1]*/;
    _args[2] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetToleranceColumnText(long numb, LPDISPATCH par)
  {
    _TDispID _dispid(/* ksSetToleranceColumnText */ DISPID(147));
    TAutoArgs<2> _args;
    _args[1] = numb /*[VT_I4:0]*/;
    _args[2] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetPointOnToleranceTable(long tolerance, short entry, LPDISPATCH point)
  {
    _TDispID _dispid(/* ksGetPointOnToleranceTable */ DISPID(148));
    TAutoArgs<3> _args;
    _args[1] = tolerance /*[VT_I4:0]*/;
    _args[2] = entry /*[VT_I2:0]*/;
    _args[3] = point /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksOpenDocument(BSTR nameDoc, TOLEBOOL regim)
  {
    _TDispID _dispid(/* ksOpenDocument */ DISPID(149));
    TAutoArgs<2> _args;
    _args[1] = nameDoc /*[VT_BSTR:0]*/;
    _args[2] = regim /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksSaveDocument(BSTR fileName)
  {
    _TDispID _dispid(/* ksSaveDocument */ DISPID(150));
    TAutoArgs<1> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksCloseDocument()
  {
    _TDispID _dispid(/* ksCloseDocument */ DISPID(151));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksCreateDocument(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksCreateDocument */ DISPID(152));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksMovePoint(double* x, double* y, double ang, double len)
  {
    _TDispID _dispid(/* ksMovePoint */ DISPID(153));
    TAutoArgs<4> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    _args[3] = ang /*[VT_R8:0]*/;
    _args[4] = len /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksReadTableFromFile(BSTR tblFileName)
  {
    _TDispID _dispid(/* ksReadTableFromFile */ DISPID(154));
    TAutoArgs<1> _args;
    _args[1] = tblFileName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDrawKompasDocument(long HWindow, BSTR docFileName)
  {
    _TDispID _dispid(/* ksDrawKompasDocument */ DISPID(155));
    TAutoArgs<2> _args;
    _args[1] = HWindow /*[VT_I4:0]*/;
    _args[2] = docFileName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksViewGetObjectArea()
  {
    _TDispID _dispid(/* ksViewGetObjectArea */ DISPID(156));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetMacroPlacement(long macro, double* x, double* y, double* angl)
  {
    _TDispID _dispid(/* ksGetMacroPlacement */ DISPID(157));
    TAutoArgs<4> _args;
    _args[1] = macro /*[VT_I4:0]*/;
    _args[2] = x /*[VT_R8:1]*/;
    _args[3] = y /*[VT_R8:1]*/;
    _args[4] = angl /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetMacroPlacement(long macro, double x, double y, double angl, long relativ)
  {
    _TDispID _dispid(/* ksSetMacroPlacement */ DISPID(158));
    TAutoArgs<5> _args;
    _args[1] = macro /*[VT_I4:0]*/;
    _args[2] = x /*[VT_R8:0]*/;
    _args[3] = y /*[VT_R8:0]*/;
    _args[4] = angl /*[VT_R8:0]*/;
    _args[5] = relativ /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDrawKompasGroup(long HWindow, long gr)
  {
    _TDispID _dispid(/* ksDrawKompasGroup */ DISPID(159));
    TAutoArgs<2> _args;
    _args[1] = HWindow /*[VT_I4:0]*/;
    _args[2] = gr /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ksGetDocVariableArray(long p)
  {
    _TDispID _dispid(/* ksGetDocVariableArray */ DISPID(160));
    TAutoArgs<1> _args;
    _args[1] = p /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetDocVariableArray(long obj, LPDISPATCH arr, TOLEBOOL setNote)
  {
    _TDispID _dispid(/* ksSetDocVariableArray */ DISPID(161));
    TAutoArgs<3> _args;
    _args[1] = obj /*[VT_I4:0]*/;
    _args[2] = arr /*[VT_DISPATCH:0]*/;
    _args[3] = setNote /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetDocOptions(long optionsType, LPDISPATCH param)
  {
    _TDispID _dispid(/* ksGetDocOptions */ DISPID(162));
    TAutoArgs<2> _args;
    _args[1] = optionsType /*[VT_I4:0]*/;
    _args[2] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetObjConstraint(long obj, LPDISPATCH par)
  {
    _TDispID _dispid(/* ksSetObjConstraint */ DISPID(163));
    TAutoArgs<2> _args;
    _args[1] = obj /*[VT_I4:0]*/;
    _args[2] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ksGetObjConstraints(long obj)
  {
    _TDispID _dispid(/* ksGetObjConstraints */ DISPID(164));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDestroyObjConstraint(long obj, LPDISPATCH par)
  {
    _TDispID _dispid(/* ksDestroyObjConstraint */ DISPID(165));
    TAutoArgs<2> _args;
    _args[1] = obj /*[VT_I4:0]*/;
    _args[2] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksGetZona(double x, double y, long* result_)
  {
    _TDispID _dispid(/* ksGetZona */ DISPID(166));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = result_ /*[VT_I4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksClearRegion(long grClear, long grRegion, TOLEBOOL inside)
  {
    _TDispID _dispid(/* ksClearRegion */ DISPID(167));
    TAutoArgs<3> _args;
    _args[1] = grClear /*[VT_I4:0]*/;
    _args[2] = grRegion /*[VT_I4:0]*/;
    _args[3] = inside /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksNurbsForConicCurve(LPDISPATCH xArr, LPDISPATCH yArr, short style)
  {
    _TDispID _dispid(/* ksNurbsForConicCurve */ DISPID(168));
    TAutoArgs<3> _args;
    _args[1] = xArr /*[VT_DISPATCH:0]*/;
    _args[2] = yArr /*[VT_DISPATCH:0]*/;
    _args[3] = style /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetStamp()
  {
    _TDispID _dispid(/* GetStamp */ DISPID(169));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksGetTextLength(BSTR text, long style)
  {
    _TDispID _dispid(/* ksGetTextLength */ DISPID(170));
    TAutoArgs<2> _args;
    _args[1] = text /*[VT_BSTR:0]*/;
    _args[2] = style /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksGetTextLengthFromReference(long pText)
  {
    _TDispID _dispid(/* ksGetTextLengthFromReference */ DISPID(171));
    TAutoArgs<1> _args;
    _args[1] = pText /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksZoom(double x1, double y1, double x2, double y2)
  {
    _TDispID _dispid(/* ksZoom */ DISPID(172));
    TAutoArgs<4> _args;
    _args[1] = x1 /*[VT_R8:0]*/;
    _args[2] = y1 /*[VT_R8:0]*/;
    _args[3] = x2 /*[VT_R8:0]*/;
    _args[4] = y2 /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksZoomScale(double x, double y, double scale)
  {
    _TDispID _dispid(/* ksZoomScale */ DISPID(173));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = scale /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksZoomPrevNextOrAll(short type)
  {
    _TDispID _dispid(/* ksZoomPrevNextOrAll */ DISPID(174));
    TAutoArgs<1> _args;
    _args[1] = type /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetZoomScale(double* x, double* y, double* scale)
  {
    _TDispID _dispid(/* ksGetZoomScale */ DISPID(175));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    _args[3] = scale /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSpecificationOnSheet(short onSheet)
  {
    _TDispID _dispid(/* ksSpecificationOnSheet */ DISPID(176));
    TAutoArgs<1> _args;
    _args[1] = onSheet /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSpecification()
  {
    _TDispID _dispid(/* GetSpecification */ DISPID(177));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksReDrawDocPart(LPDISPATCH rect, long view)
  {
    _TDispID _dispid(/* ksReDrawDocPart */ DISPID(178));
    TAutoArgs<2> _args;
    _args[1] = rect /*[VT_DISPATCH:0]*/;
    _args[2] = view /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksGetCursorLimit()
  {
    _TDispID _dispid(/* ksGetCursorLimit */ DISPID(179));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetTextAlign(long pText)
  {
    _TDispID _dispid(/* ksGetTextAlign */ DISPID(180));
    TAutoArgs<1> _args;
    _args[1] = pText /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetTextAlign(long pText, long align)
  {
    _TDispID _dispid(/* ksSetTextAlign */ DISPID(181));
    TAutoArgs<2> _args;
    _args[1] = pText /*[VT_I4:0]*/;
    _args[2] = align /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetTextLineAlign(short align)
  {
    _TDispID _dispid(/* ksSetTextLineAlign */ DISPID(182));
    TAutoArgs<1> _args;
    _args[1] = align /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDestroyObjects(long gr)
  {
    _TDispID _dispid(/* ksDestroyObjects */ DISPID(183));
    TAutoArgs<1> _args;
    _args[1] = gr /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksEnableUndo(TOLEBOOL enabl)
  {
    _TDispID _dispid(/* ksEnableUndo */ DISPID(184));
    TAutoArgs<1> _args;
    _args[1] = enabl /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksAddPowerForm(double x, double y)
  {
    _TDispID _dispid(/* ksAddPowerForm */ DISPID(185));
    TAutoArgs<2> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCreatePowerArc()
  {
    _TDispID _dispid(/* ksCreatePowerArc */ DISPID(186));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksTrimNurbs(long pObj, double tMin, double tMax)
  {
    _TDispID _dispid(/* ksTrimNurbs */ DISPID(187));
    TAutoArgs<3> _args;
    _args[1] = pObj /*[VT_I4:0]*/;
    _args[2] = tMin /*[VT_R8:0]*/;
    _args[3] = tMax /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksGetDimensionVariableName(long dimObj)
  {
    _TDispID _dispid(/* ksGetDimensionVariableName */ DISPID(188));
    TAutoArgs<1> _args;
    _args[1] = dimObj /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksTrimmCurve(long curve, double x1, double y1, double x2, double y2, double x3, 
                               double y3, short deleteOldCurve)
  {
    _TDispID _dispid(/* ksTrimmCurve */ DISPID(189));
    TAutoArgs<8> _args;
    _args[1] = curve /*[VT_I4:0]*/;
    _args[2] = x1 /*[VT_R8:0]*/;
    _args[3] = y1 /*[VT_R8:0]*/;
    _args[4] = x2 /*[VT_R8:0]*/;
    _args[5] = y2 /*[VT_R8:0]*/;
    _args[6] = x3 /*[VT_R8:0]*/;
    _args[7] = y3 /*[VT_R8:0]*/;
    _args[8] = deleteOldCurve /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SaveAsToRasterFormat(BSTR fileName, LPDISPATCH rasterPar)
  {
    _TDispID _dispid(/* SaveAsToRasterFormat */ DISPID(190));
    TAutoArgs<2> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = rasterPar /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall RasterFormatParam()
  {
    _TDispID _dispid(/* RasterFormatParam */ DISPID(191));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksGetLeaderShelfLength(long leader, double* x, double* y)
  {
    _TDispID _dispid(/* ksGetLeaderShelfLength */ DISPID(192));
    TAutoArgs<3> _args;
    _args[1] = leader /*[VT_I4:0]*/;
    _args[2] = x /*[VT_R8:1]*/;
    _args[3] = y /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetDocOptions(long optionsType, LPDISPATCH param)
  {
    _TDispID _dispid(/* ksSetDocOptions */ DISPID(193));
    TAutoArgs<2> _args;
    _args[1] = optionsType /*[VT_I4:0]*/;
    _args[2] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksAxisLine(LPDISPATCH param)
  {
    _TDispID _dispid(/* ksAxisLine */ DISPID(194));
    TAutoArgs<1> _args;
    _args[1] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SaveAsToUncompressedRasterFormat(BSTR fileName, LPDISPATCH rasterPar)
  {
    _TDispID _dispid(/* SaveAsToUncompressedRasterFormat */ DISPID(195));
    TAutoArgs<2> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = rasterPar /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCreateSheetArbitraryView(LPDISPATCH par, long* number)
  {
    _TDispID _dispid(/* ksCreateSheetArbitraryView */ DISPID(196));
    TAutoArgs<2> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    _args[2] = number /*[VT_I4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksCreateSheetStandartViews(LPDISPATCH par, long bitVector, double dx, 
                                                 double dy)
  {
    _TDispID _dispid(/* ksCreateSheetStandartViews */ DISPID(197));
    TAutoArgs<4> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    _args[2] = bitVector /*[VT_I4:0]*/;
    _args[3] = dx /*[VT_R8:0]*/;
    _args[4] = dy /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCreateSheetProjectionView(LPDISPATCH par, long* number, long view)
  {
    _TDispID _dispid(/* ksCreateSheetProjectionView */ DISPID(198));
    TAutoArgs<3> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    _args[2] = number /*[VT_I4:1]*/;
    _args[3] = view /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCreateSheetArrowView(LPDISPATCH par, long* number, long obj)
  {
    _TDispID _dispid(/* ksCreateSheetArrowView */ DISPID(199));
    TAutoArgs<3> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    _args[2] = number /*[VT_I4:1]*/;
    _args[3] = obj /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCreateSheetSectionView(LPDISPATCH par, long* number, long obj)
  {
    _TDispID _dispid(/* ksCreateSheetSectionView */ DISPID(200));
    TAutoArgs<3> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    _args[2] = number /*[VT_I4:1]*/;
    _args[3] = obj /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCreateSheetRemoteView(LPDISPATCH par, long* number, long obj)
  {
    _TDispID _dispid(/* ksCreateSheetRemoteView */ DISPID(201));
    TAutoArgs<3> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    _args[2] = number /*[VT_I4:1]*/;
    _args[3] = obj /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksRebuildDocument()
  {
    _TDispID _dispid(/* ksRebuildDocument */ DISPID(202));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksRemoteElement(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksRemoteElement */ DISPID(203));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCopyObjEx(LPDISPATCH param)
  {
    _TDispID _dispid(/* ksCopyObjEx */ DISPID(204));
    TAutoArgs<1> _args;
    _args[1] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  Kompas6api5_tlb::Object2DNotifyPtr __fastcall GetObject2DNotify(long objType)
  {
    _TDispID _dispid(/* GetObject2DNotify */ DISPID(205));
    TAutoArgs<1> _args;
    _args[1] = objType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return Kompas6api5_tlb::Object2DNotifyPtr( (LPUNKNOWN) /*[VT_UNKNOWN:1]*/_args.GetRetVariant(), false );
  }

  Kompas6api5_tlb::SelectionMngNotifyPtr __fastcall GetSelectionMngNotify()
  {
    _TDispID _dispid(/* GetSelectionMngNotify */ DISPID(206));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return Kompas6api5_tlb::SelectionMngNotifyPtr( (LPUNKNOWN) /*[VT_UNKNOWN:1]*/_args.GetRetVariant(), false );
  }

  Kompas6api5_tlb::ksObject2DNotifyResultPtr __fastcall GetObject2DNotifyResult()
  {
    _TDispID _dispid(/* GetObject2DNotifyResult */ DISPID(207));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksObject2DNotifyResult* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  Kompas6api5_tlb::Document2DNotifyPtr __fastcall GetDocument2DNotify()
  {
    _TDispID _dispid(/* GetDocument2DNotify */ DISPID(208));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return Kompas6api5_tlb::Document2DNotifyPtr( (LPUNKNOWN) /*[VT_UNKNOWN:1]*/_args.GetRetVariant(), false );
  }

  long __fastcall ksSetMaterialParam(LPDISPATCH material, double density)
  {
    _TDispID _dispid(/* ksSetMaterialParam */ DISPID(209));
    TAutoArgs<2> _args;
    _args[1] = material /*[VT_DISPATCH:0]*/;
    _args[2] = density /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksChangeObjectsOrder(long group, long obj, int type)
  {
    _TDispID _dispid(/* ksChangeObjectsOrder */ DISPID(210));
    TAutoArgs<3> _args;
    _args[1] = group /*[VT_I4:0]*/;
    _args[2] = obj /*[VT_I4:0]*/;
    _args[3] = type /*[VT_INT:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksIsSlaveSpcOpened()
  {
    _TDispID _dispid(/* ksIsSlaveSpcOpened */ DISPID(211));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetMacroWaitDblClickEdit(long ref)
  {
    _TDispID _dispid(/* ksGetMacroWaitDblClickEdit */ DISPID(213));
    TAutoArgs<1> _args;
    _args[1] = ref /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetMacroWaitDblClickEdit(long ref, long waitDblClick)
  {
    _TDispID _dispid(/* ksSetMacroWaitDblClickEdit */ DISPID(214));
    TAutoArgs<2> _args;
    _args[1] = ref /*[VT_I4:0]*/;
    _args[2] = waitDblClick /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksParametrizeObjects(long obj, LPDISPATCH par)
  {
    _TDispID _dispid(/* ksParametrizeObjects */ DISPID(215));
    TAutoArgs<2> _args;
    _args[1] = obj /*[VT_I4:0]*/;
    _args[2] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCursorEx(LPDISPATCH info, double* x, double* y, LPDISPATCH phantom, 
                             LPDISPATCH processParam)
  {
    _TDispID _dispid(/* ksCursorEx */ DISPID(216));
    TAutoArgs<5> _args;
    _args[1] = info /*[VT_DISPATCH:0]*/;
    _args[2] = x /*[VT_R8:1]*/;
    _args[3] = y /*[VT_R8:1]*/;
    _args[4] = phantom /*[VT_DISPATCH:0]*/;
    _args[5] = processParam /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksPlacementEx(LPDISPATCH info, double* x, double* y, double* angle, 
                                LPDISPATCH phantom, LPDISPATCH processParam)
  {
    _TDispID _dispid(/* ksPlacementEx */ DISPID(217));
    TAutoArgs<6> _args;
    _args[1] = info /*[VT_DISPATCH:0]*/;
    _args[2] = x /*[VT_R8:1]*/;
    _args[3] = y /*[VT_R8:1]*/;
    _args[4] = angle /*[VT_R8:1]*/;
    _args[5] = phantom /*[VT_DISPATCH:0]*/;
    _args[6] = processParam /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksCalcRasterScale(BSTR fileName, double w, double h)
  {
    _TDispID _dispid(/* ksCalcRasterScale */ DISPID(218));
    TAutoArgs<3> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = w /*[VT_R8:0]*/;
    _args[3] = h /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksTextEx(LPDISPATCH txtParam, long align)
  {
    _TDispID _dispid(/* ksTextEx */ DISPID(219));
    TAutoArgs<2> _args;
    _args[1] = txtParam /*[VT_DISPATCH:0]*/;
    _args[2] = align /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksColouringEx(long color, long group)
  {
    _TDispID _dispid(/* ksColouringEx */ DISPID(220));
    TAutoArgs<2> _args;
    _args[1] = color /*[VT_I4:0]*/;
    _args[2] = group /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksSaveDocumentEx(BSTR fileName, long SaveMode)
  {
    _TDispID _dispid(/* ksSaveDocumentEx */ DISPID(221));
    TAutoArgs<2> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = SaveMode /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TVariant __fastcall ksAssociationViewMatrix3D(long ViewRef)
  {
    _TDispID _dispid(/* ksAssociationViewMatrix3D */ DISPID(222));
    TAutoArgs<1> _args;
    _args[1] = ViewRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksPoint3DToAssociationView(long view, double x3D, double y3D, double z3D, 
                                                 double* x2D, double* y2D)
  {
    _TDispID _dispid(/* ksPoint3DToAssociationView */ DISPID(223));
    TAutoArgs<6> _args;
    _args[1] = view /*[VT_I4:0]*/;
    _args[2] = x3D /*[VT_R8:0]*/;
    _args[3] = y3D /*[VT_R8:0]*/;
    _args[4] = z3D /*[VT_R8:0]*/;
    _args[5] = x2D /*[VT_R8:1]*/;
    _args[6] = y2D /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetReferenceDocumentPartEx(short t, long SheetNumb)
  {
    _TDispID _dispid(/* ksGetReferenceDocumentPartEx */ DISPID(224));
    TAutoArgs<2> _args;
    _args[1] = t /*[VT_I2:0]*/;
    _args[2] = SheetNumb /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetStampEx(long SheetNumb)
  {
    _TDispID _dispid(/* GetStampEx */ DISPID(225));
    TAutoArgs<1> _args;
    _args[1] = SheetNumb /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetDocumentPagesCount()
  {
    _TDispID _dispid(/* ksGetDocumentPagesCount */ DISPID(226));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksSaveToDXF(BSTR DXFFileName)
  {
    _TDispID _dispid(/* ksSaveToDXF */ DISPID(227));
    TAutoArgs<1> _args;
    _args[1] = DXFFileName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksInitFilePreviewFuncW(BSTR funcName, long hInst, LPDISPATCH dispatchOCX)
  {
    _TDispID _dispid(/* ksInitFilePreviewFuncW */ DISPID(228));
    TAutoArgs<3> _args;
    _args[1] = funcName /*[VT_BSTR:0]*/;
    _args[2] = hInst /*[VT_I4:0]*/;
    _args[3] = dispatchOCX /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksChangeLeader(LPDISPATCH leaderParam)
  {
    _TDispID _dispid(/* ksChangeLeader */ DISPID(229));
    TAutoArgs<1> _args;
    _args[1] = leaderParam /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksGetShelfPoint(long p, long index, double* x, double* y, long paramType)
  {
    _TDispID _dispid(/* ksGetShelfPoint */ DISPID(230));
    TAutoArgs<5> _args;
    _args[1] = p /*[VT_I4:0]*/;
    _args[2] = index /*[VT_I4:0]*/;
    _args[3] = x /*[VT_R8:1]*/;
    _args[4] = y /*[VT_R8:1]*/;
    _args[5] = paramType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksMakeEncloseContoursEx(long gr, double x, double y, TOLEBOOL forHatch)
  {
    _TDispID _dispid(/* ksMakeEncloseContoursEx */ DISPID(231));
    TAutoArgs<4> _args;
    _args[1] = gr /*[VT_I4:0]*/;
    _args[2] = x /*[VT_R8:0]*/;
    _args[3] = y /*[VT_R8:0]*/;
    _args[4] = forHatch /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksAnnPolylineEx(LPDISPATCH par, short term1, short term2)
  {
    _TDispID _dispid(/* ksAnnPolylineEx */ DISPID(232));
    TAutoArgs<3> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    _args[2] = term1 /*[VT_I2:0]*/;
    _args[3] = term2 /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksAnnEllipseArc(LPDISPATCH par, short term1, short term2)
  {
    _TDispID _dispid(/* ksAnnEllipseArc */ DISPID(233));
    TAutoArgs<3> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    _args[2] = term1 /*[VT_I2:0]*/;
    _args[3] = term2 /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksAnnParEllipseArc(LPDISPATCH par, short term1, short term2)
  {
    _TDispID _dispid(/* ksAnnParEllipseArc */ DISPID(234));
    TAutoArgs<3> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    _args[2] = term1 /*[VT_I2:0]*/;
    _args[3] = term2 /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksAnnCircle(double xc, double yc, double rad, long style)
  {
    _TDispID _dispid(/* ksAnnCircle */ DISPID(235));
    TAutoArgs<4> _args;
    _args[1] = xc /*[VT_R8:0]*/;
    _args[2] = yc /*[VT_R8:0]*/;
    _args[3] = rad /*[VT_R8:0]*/;
    _args[4] = style /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksAnnEllipse(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksAnnEllipse */ DISPID(236));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksAnnPolyline(long style, short term1, short term2)
  {
    _TDispID _dispid(/* ksAnnPolyline */ DISPID(237));
    TAutoArgs<3> _args;
    _args[1] = style /*[VT_I4:0]*/;
    _args[2] = term1 /*[VT_I2:0]*/;
    _args[3] = term2 /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksAnnTextEx(LPDISPATCH txtParam, long align)
  {
    _TDispID _dispid(/* ksAnnTextEx */ DISPID(238));
    TAutoArgs<2> _args;
    _args[1] = txtParam /*[VT_DISPATCH:0]*/;
    _args[2] = align /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksAnnPoint(double x, double y, long style)
  {
    _TDispID _dispid(/* ksAnnPoint */ DISPID(239));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = style /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksGetAnnObjTerminators(long annObj, short* term1, short* term2)
  {
    _TDispID _dispid(/* ksGetAnnObjTerminators */ DISPID(240));
    TAutoArgs<3> _args;
    _args[1] = annObj /*[VT_I4:0]*/;
    _args[2] = term1 /*[VT_I2:1]*/;
    _args[3] = term2 /*[VT_I2:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetObjectStyle(long obj)
  {
    _TDispID _dispid(/* ksGetObjectStyle */ DISPID(241));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksSetObjectStyle(long obj, long style)
  {
    _TDispID _dispid(/* ksSetObjectStyle */ DISPID(242));
    TAutoArgs<2> _args;
    _args[1] = obj /*[VT_I4:0]*/;
    _args[2] = style /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetMacroPlacementEx(long macro, double* x, double* y, double* angl, 
                                        long sheetParam, long* mirrorSymmetry)
  {
    _TDispID _dispid(/* ksGetMacroPlacementEx */ DISPID(243));
    TAutoArgs<6> _args;
    _args[1] = macro /*[VT_I4:0]*/;
    _args[2] = x /*[VT_R8:1]*/;
    _args[3] = y /*[VT_R8:1]*/;
    _args[4] = angl /*[VT_R8:1]*/;
    _args[5] = sheetParam /*[VT_I4:0]*/;
    _args[6] = mirrorSymmetry /*[VT_I4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetMacroPlacementEx(long macro, double x, double y, double angl, long relativ, 
                                        long mirrorSymmetry)
  {
    _TDispID _dispid(/* ksSetMacroPlacementEx */ DISPID(244));
    TAutoArgs<6> _args;
    _args[1] = macro /*[VT_I4:0]*/;
    _args[2] = x /*[VT_R8:0]*/;
    _args[3] = y /*[VT_R8:0]*/;
    _args[4] = angl /*[VT_R8:0]*/;
    _args[5] = relativ /*[VT_I4:0]*/;
    _args[6] = mirrorSymmetry /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksUndoContainer(TOLEBOOL Add)
  {
    _TDispID _dispid(/* ksUndoContainer */ DISPID(245));
    TAutoArgs<1> _args;
    _args[1] = Add /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            reference = {read = get_reference, write = set_reference};
  __property   TOLEBOOL        orthoMode = {read = get_orthoMode, write = set_orthoMode};
};
// *********************************************************************//
// Interface: ksObject2DNotify
// Flags:     (4096) Dispatchable
// GUID:      {2E29C343-C521-4B0F-B37D-587D0347B7BA}
// *********************************************************************//
interface ksObject2DNotify : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall ChangeActive(long objRef)
  {
    _TDispID _dispid(/* ChangeActive */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginDelete(long objRef)
  {
    _TDispID _dispid(/* BeginDelete */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Delete(long objRef)
  {
    _TDispID _dispid(/* Delete */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginMove(long objRef)
  {
    _TDispID _dispid(/* BeginMove */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Move(long objRef)
  {
    _TDispID _dispid(/* Move */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginRotate(long objRef)
  {
    _TDispID _dispid(/* BeginRotate */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Rotate(long objRef)
  {
    _TDispID _dispid(/* Rotate */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginScale(long objRef)
  {
    _TDispID _dispid(/* BeginScale */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall scale(long objRef)
  {
    _TDispID _dispid(/* scale */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginTransform(long objRef)
  {
    _TDispID _dispid(/* BeginTransform */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Transform(long objRef)
  {
    _TDispID _dispid(/* Transform */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginCopy(long objRef)
  {
    _TDispID _dispid(/* BeginCopy */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall copy(long objRef)
  {
    _TDispID _dispid(/* copy */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginSymmetry(long objRef)
  {
    _TDispID _dispid(/* BeginSymmetry */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Symmetry(long objRef)
  {
    _TDispID _dispid(/* Symmetry */ DISPID(15));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginProcess(long pType, long objRef)
  {
    _TDispID _dispid(/* BeginProcess */ DISPID(16));
    TAutoArgs<2> _args;
    _args[1] = pType /*[VT_I4:0]*/;
    _args[2] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall EndProcess(long pType)
  {
    _TDispID _dispid(/* EndProcess */ DISPID(17));
    TAutoArgs<1> _args;
    _args[1] = pType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall CreateObject(long objRef)
  {
    _TDispID _dispid(/* CreateObject */ DISPID(18));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall UpdateObject(long objRef)
  {
    _TDispID _dispid(/* UpdateObject */ DISPID(19));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginDestroyObject(long objRef)
  {
    _TDispID _dispid(/* BeginDestroyObject */ DISPID(20));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DestroyObject(long objRef)
  {
    _TDispID _dispid(/* DestroyObject */ DISPID(21));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksSelectionMngNotify
// Flags:     (4096) Dispatchable
// GUID:      {A421368A-34B6-4DDF-9A52-73B3488EE83F}
// *********************************************************************//
interface ksSelectionMngNotify : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall Select(TVariant obj)
  {
    _TDispID _dispid(/* Select */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_VARIANT:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Unselect(TVariant obj)
  {
    _TDispID _dispid(/* Unselect */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_VARIANT:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall UnselectAll()
  {
    _TDispID _dispid(/* UnselectAll */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksObject2DNotifyResult
// Flags:     (4096) Dispatchable
// GUID:      {1FE1EB28-CD28-4700-8E46-25CCFE9C0EC8}
// *********************************************************************//
interface ksObject2DNotifyResult : public TDispWrapper<IDispatch>
{
  long __fastcall GetNotifyType()
  {
    _TDispID _dispid(/* GetNotifyType */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsCopy()
  {
    _TDispID _dispid(/* IsCopy */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetSheetPoint(TOLEBOOL from, double* x, double* y)
  {
    _TDispID _dispid(/* GetSheetPoint */ DISPID(3));
    TAutoArgs<3> _args;
    _args[1] = from /*[VT_BOOL:0]*/;
    _args[2] = x /*[VT_R8:1]*/;
    _args[3] = y /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetCopyObject()
  {
    _TDispID _dispid(/* GetCopyObject */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetAngle()
  {
    _TDispID _dispid(/* GetAngle */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetScale(double* sx, double* sy)
  {
    _TDispID _dispid(/* GetScale */ DISPID(6));
    TAutoArgs<2> _args;
    _args[1] = sx /*[VT_R8:1]*/;
    _args[2] = sy /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetProcessType()
  {
    _TDispID _dispid(/* GetProcessType */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsUndoMode()
  {
    _TDispID _dispid(/* IsUndoMode */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsRedoMode()
  {
    _TDispID _dispid(/* IsRedoMode */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksDocument2DNotify
// Flags:     (4096) Dispatchable
// GUID:      {13F0BE95-3361-4AD9-90AF-D935EA64A127}
// *********************************************************************//
interface ksDocument2DNotify : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall BeginRebuild()
  {
    _TDispID _dispid(/* BeginRebuild */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Rebuild()
  {
    _TDispID _dispid(/* Rebuild */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginChoiceMaterial()
  {
    _TDispID _dispid(/* BeginChoiceMaterial */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ChoiceMaterial(BSTR material, double density)
  {
    _TDispID _dispid(/* ChoiceMaterial */ DISPID(4));
    TAutoArgs<2> _args;
    _args[1] = material /*[VT_BSTR:0]*/;
    _args[2] = density /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginInsertFragment()
  {
    _TDispID _dispid(/* BeginInsertFragment */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall LocalFragmentEdit(LPDISPATCH newDoc, TOLEBOOL newFrw)
  {
    _TDispID _dispid(/* LocalFragmentEdit */ DISPID(6));
    TAutoArgs<2> _args;
    _args[1] = newDoc /*[VT_DISPATCH:0]*/;
    _args[2] = newFrw /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksDocument3D
// Flags:     (4096) Dispatchable
// GUID:      {111CEFE1-A0A7-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksDocument3D : public TDispWrapper<IDispatch>
{
  void __fastcall set_fileName(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* fileName */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_fileName()
  {
    _TDispID _dispid(/* fileName */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_comment(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* comment */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_comment()
  {
    _TDispID _dispid(/* comment */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_author(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* author */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_author()
  {
    _TDispID _dispid(/* author */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_reference(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* reference */ DISPID(39));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_reference()
  {
    _TDispID _dispid(/* reference */ DISPID(39));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_perspective(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* perspective */ DISPID(40));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_perspective()
  {
    _TDispID _dispid(/* perspective */ DISPID(40));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_drawMode(int /*[VT_INT:0]*/ Value)
  {
    _TDispID _dispid(/* drawMode */ DISPID(41));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  int /*[VT_INT:0]*/ __fastcall get_drawMode()
  {
    _TDispID _dispid(/* drawMode */ DISPID(41));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_hideAllPlanes(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* hideAllPlanes */ DISPID(50));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_hideAllPlanes()
  {
    _TDispID _dispid(/* hideAllPlanes */ DISPID(50));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_hideAllAxis(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* hideAllAxis */ DISPID(51));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_hideAllAxis()
  {
    _TDispID _dispid(/* hideAllAxis */ DISPID(51));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_hideAllSketches(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* hideAllSketches */ DISPID(52));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_hideAllSketches()
  {
    _TDispID _dispid(/* hideAllSketches */ DISPID(52));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_hideAllPlaces(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* hideAllPlaces */ DISPID(53));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_hideAllPlaces()
  {
    _TDispID _dispid(/* hideAllPlaces */ DISPID(53));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_hideAllSurfaces(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* hideAllSurfaces */ DISPID(54));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_hideAllSurfaces()
  {
    _TDispID _dispid(/* hideAllSurfaces */ DISPID(54));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_hideAllThreads(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* hideAllThreads */ DISPID(55));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_hideAllThreads()
  {
    _TDispID _dispid(/* hideAllThreads */ DISPID(55));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_shadedWireframe(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* shadedWireframe */ DISPID(63));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_shadedWireframe()
  {
    _TDispID _dispid(/* shadedWireframe */ DISPID(63));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_dismantleMode(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* dismantleMode */ DISPID(68));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_dismantleMode()
  {
    _TDispID _dispid(/* dismantleMode */ DISPID(68));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_treeNeedRebuild(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* treeNeedRebuild */ DISPID(70));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_treeNeedRebuild()
  {
    _TDispID _dispid(/* treeNeedRebuild */ DISPID(70));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_enableRollBackFeaturesInCollections(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* enableRollBackFeaturesInCollections */ DISPID(75));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_enableRollBackFeaturesInCollections()
  {
    _TDispID _dispid(/* enableRollBackFeaturesInCollections */ DISPID(75));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_hideAllCurves(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* hideAllCurves */ DISPID(77));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_hideAllCurves()
  {
    _TDispID _dispid(/* hideAllCurves */ DISPID(77));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_hideAllControlPoints(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* hideAllControlPoints */ DISPID(78));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_hideAllControlPoints()
  {
    _TDispID _dispid(/* hideAllControlPoints */ DISPID(78));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_hideAllDimensions(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* hideAllDimensions */ DISPID(79));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_hideAllDimensions()
  {
    _TDispID _dispid(/* hideAllDimensions */ DISPID(79));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_hideAllDesignations(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* hideAllDesignations */ DISPID(80));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_hideAllDesignations()
  {
    _TDispID _dispid(/* hideAllDesignations */ DISPID(80));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_hideAllAuxiliaryGeom(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* hideAllAuxiliaryGeom */ DISPID(81));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_hideAllAuxiliaryGeom()
  {
    _TDispID _dispid(/* hideAllAuxiliaryGeom */ DISPID(81));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_hideInComponentsMode(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* hideInComponentsMode */ DISPID(82));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_hideInComponentsMode()
  {
    _TDispID _dispid(/* hideInComponentsMode */ DISPID(82));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_windowNeedRebuild(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* windowNeedRebuild */ DISPID(84));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_windowNeedRebuild()
  {
    _TDispID _dispid(/* windowNeedRebuild */ DISPID(84));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall get_invisibleMode()
  {
    _TDispID _dispid(/* invisibleMode */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Create(TOLEBOOL invisible/*[def,opt]*/, TOLEBOOL typeDoc/*[def,opt]*/)
  {
    _TDispID _dispid(/* Create */ DISPID(5));
    TAutoArgs<2> _args;
    _args[1] = invisible /*[VT_BOOL:0]*/;
    _args[2] = typeDoc /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsDetail()
  {
    _TDispID _dispid(/* IsDetail */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPart(long type)
  {
    _TDispID _dispid(/* GetPart */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = type /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall MateConstraintCollection()
  {
    _TDispID _dispid(/* MateConstraintCollection */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall UpdateDocumentParam()
  {
    _TDispID _dispid(/* UpdateDocumentParam */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsEditMode()
  {
    _TDispID _dispid(/* IsEditMode */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ChangeObjectInLibRequest()
  {
    _TDispID _dispid(/* ChangeObjectInLibRequest */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall StopLibRequest()
  {
    _TDispID _dispid(/* StopLibRequest */ DISPID(12));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSpecification()
  {
    _TDispID _dispid(/* GetSpecification */ DISPID(13));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetRequestInfo(LPDISPATCH part)
  {
    _TDispID _dispid(/* GetRequestInfo */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = part /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall UserGetPlacementAndEntity(long entityCount)
  {
    _TDispID _dispid(/* UserGetPlacementAndEntity */ DISPID(15));
    TAutoArgs<1> _args;
    _args[1] = entityCount /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetActive()
  {
    _TDispID _dispid(/* SetActive */ DISPID(16));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsActive()
  {
    _TDispID _dispid(/* IsActive */ DISPID(17));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Open(BSTR fileName, TOLEBOOL invisible/*[def,opt]*/)
  {
    _TDispID _dispid(/* Open */ DISPID(18));
    TAutoArgs<2> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = invisible /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Save()
  {
    _TDispID _dispid(/* Save */ DISPID(19));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SaveAs(BSTR fileName)
  {
    _TDispID _dispid(/* SaveAs */ DISPID(20));
    TAutoArgs<1> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall close()
  {
    _TDispID _dispid(/* close */ DISPID(21));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall UserGetCursor(BSTR prompt, double* x, double* y, double* z)
  {
    _TDispID _dispid(/* UserGetCursor */ DISPID(22));
    TAutoArgs<4> _args;
    _args[1] = prompt /*[VT_BSTR:0]*/;
    _args[2] = x /*[VT_R8:1]*/;
    _args[3] = y /*[VT_R8:1]*/;
    _args[4] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPartFromFile(BSTR fileName, LPDISPATCH part, 
                                      TOLEBOOL externalFile/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetPartFromFile */ DISPID(23));
    TAutoArgs<3> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = part /*[VT_DISPATCH:0]*/;
    _args[3] = externalFile /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall EntityCollection(short objType/*[def,opt]*/, 
                                         TOLEBOOL checkEntity/*[def,opt]*/)
  {
    _TDispID _dispid(/* EntityCollection */ DISPID(24));
    TAutoArgs<2> _args;
    _args[1] = objType /*[VT_I2:0]*/;
    _args[2] = checkEntity /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall UserSelectEntity(LPDISPATCH filterObject, BSTR methodName, BSTR prompt, 
                                         long hInst/*[def,opt]*/, LPDISPATCH val/*[def,opt]*/)
  {
    _TDispID _dispid(/* UserSelectEntity */ DISPID(25));
    TAutoArgs<5> _args;
    _args[1] = filterObject /*[VT_DISPATCH:0]*/;
    _args[2] = methodName /*[VT_BSTR:0]*/;
    _args[3] = prompt /*[VT_BSTR:0]*/;
    _args[4] = hInst /*[VT_I4:0]*/;
    _args[5] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall RemoveMateConstraint(long constraintType, LPDISPATCH obj1, LPDISPATCH obj2)
  {
    _TDispID _dispid(/* RemoveMateConstraint */ DISPID(26));
    TAutoArgs<3> _args;
    _args[1] = constraintType /*[VT_I4:0]*/;
    _args[2] = obj1 /*[VT_DISPATCH:0]*/;
    _args[3] = obj2 /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall AddMateConstraint(long constraintType, LPDISPATCH obj1, LPDISPATCH obj2, 
                                        short direction/*[def,opt]*/, short fixed/*[def,opt]*/, 
                                        double val/*[def,opt]*/)
  {
    _TDispID _dispid(/* AddMateConstraint */ DISPID(27));
    TAutoArgs<6> _args;
    _args[1] = constraintType /*[VT_I4:0]*/;
    _args[2] = obj1 /*[VT_DISPATCH:0]*/;
    _args[3] = obj2 /*[VT_DISPATCH:0]*/;
    _args[4] = direction /*[VT_I2:0]*/;
    _args[5] = fixed /*[VT_I2:0]*/;
    _args[6] = val /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDeleteObj(long ref)
  {
    _TDispID _dispid(/* ksDeleteObj */ DISPID(28));
    TAutoArgs<1> _args;
    _args[1] = ref /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall PartCollection(TOLEBOOL refresh)
  {
    _TDispID _dispid(/* PartCollection */ DISPID(29));
    TAutoArgs<1> _args;
    _args[1] = refresh /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall CreatePartFromFile(BSTR fileName, LPDISPATCH part, LPDISPATCH plane)
  {
    _TDispID _dispid(/* CreatePartFromFile */ DISPID(30));
    TAutoArgs<3> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = part /*[VT_DISPATCH:0]*/;
    _args[3] = plane /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall CreatePartInAssembly(BSTR fileName, LPDISPATCH plane)
  {
    _TDispID _dispid(/* CreatePartInAssembly */ DISPID(31));
    TAutoArgs<2> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = plane /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall RebuildDocument()
  {
    _TDispID _dispid(/* RebuildDocument */ DISPID(32));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ZoomPrevNextOrAll(short type)
  {
    _TDispID _dispid(/* ZoomPrevNextOrAll */ DISPID(33));
    TAutoArgs<1> _args;
    _args[1] = type /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetMateConstraint()
  {
    _TDispID _dispid(/* GetMateConstraint */ DISPID(34));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SaveAsToRasterFormat(BSTR fileName, LPDISPATCH rasterPar)
  {
    _TDispID _dispid(/* SaveAsToRasterFormat */ DISPID(35));
    TAutoArgs<2> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = rasterPar /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall RasterFormatParam()
  {
    _TDispID _dispid(/* RasterFormatParam */ DISPID(36));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SaveAsToAdditionFormat(BSTR fileName, LPDISPATCH additionPar)
  {
    _TDispID _dispid(/* SaveAsToAdditionFormat */ DISPID(37));
    TAutoArgs<2> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = additionPar /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall AdditionFormatParam()
  {
    _TDispID _dispid(/* AdditionFormatParam */ DISPID(38));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetViewProjectionCollection()
  {
    _TDispID _dispid(/* GetViewProjectionCollection */ DISPID(42));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DeleteObject(LPDISPATCH obj)
  {
    _TDispID _dispid(/* DeleteObject */ DISPID(43));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSelectionMng()
  {
    _TDispID _dispid(/* GetSelectionMng */ DISPID(44));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetChooseMng()
  {
    _TDispID _dispid(/* GetChooseMng */ DISPID(45));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetObjectType(LPDISPATCH obj)
  {
    _TDispID _dispid(/* GetObjectType */ DISPID(46));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetObjParam(long ref, LPDISPATCH param, long parType/*[def,opt]*/)
  {
    _TDispID _dispid(/* ksGetObjParam */ DISPID(47));
    TAutoArgs<3> _args;
    _args[1] = ref /*[VT_I4:0]*/;
    _args[2] = param /*[VT_DISPATCH:0]*/;
    _args[3] = parType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetObjParam(long referObj, LPDISPATCH param, long parType/*[def,opt]*/)
  {
    _TDispID _dispid(/* ksSetObjParam */ DISPID(48));
    TAutoArgs<3> _args;
    _args[1] = referObj /*[VT_I4:0]*/;
    _args[2] = param /*[VT_DISPATCH:0]*/;
    _args[3] = parType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SaveAsToUncompressedRasterFormat(BSTR fileName, LPDISPATCH rasterPar)
  {
    _TDispID _dispid(/* SaveAsToUncompressedRasterFormat */ DISPID(49));
    TAutoArgs<2> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = rasterPar /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall AddImportedSurfaces(BSTR fileName, TOLEBOOL together)
  {
    _TDispID _dispid(/* AddImportedSurfaces */ DISPID(56));
    TAutoArgs<2> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = together /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  Kompas6api5_tlb::Document3DNotifyPtr __fastcall GetDocument3DNotify()
  {
    _TDispID _dispid(/* GetDocument3DNotify */ DISPID(57));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return Kompas6api5_tlb::Document3DNotifyPtr( (LPUNKNOWN) /*[VT_UNKNOWN:1]*/_args.GetRetVariant(), false );
  }

  Kompas6api5_tlb::ksAttribute3DCollectionPtr __fastcall AttributeCollection(long key1, long key2, 
                                                                             long key3, long key4, 
                                                                             double numb, 
                                                                             LPDISPATCH pObj)
  {
    _TDispID _dispid(/* AttributeCollection */ DISPID(58));
    TAutoArgs<6> _args;
    _args[1] = key1 /*[VT_I4:0]*/;
    _args[2] = key2 /*[VT_I4:0]*/;
    _args[3] = key3 /*[VT_I4:0]*/;
    _args[4] = key4 /*[VT_I4:0]*/;
    _args[5] = numb /*[VT_R8:0]*/;
    _args[6] = pObj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksAttribute3DCollection* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  Kompas6api5_tlb::ksFeatureCollectionPtr __fastcall FeatureCollection(long key1, long key2, 
                                                                       long key3, long key4, 
                                                                       double numb, int objType)
  {
    _TDispID _dispid(/* FeatureCollection */ DISPID(59));
    TAutoArgs<6> _args;
    _args[1] = key1 /*[VT_I4:0]*/;
    _args[2] = key2 /*[VT_I4:0]*/;
    _args[3] = key3 /*[VT_I4:0]*/;
    _args[4] = key4 /*[VT_I4:0]*/;
    _args[5] = numb /*[VT_R8:0]*/;
    _args[6] = objType /*[VT_INT:0]*/;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksFeatureCollection* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPartFromFileEx(BSTR fileName, LPDISPATCH part, 
                                        TOLEBOOL externalFile/*[def,opt]*/, 
                                        TOLEBOOL redraw/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetPartFromFileEx */ DISPID(60));
    TAutoArgs<4> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = part /*[VT_DISPATCH:0]*/;
    _args[3] = externalFile /*[VT_BOOL:0]*/;
    _args[4] = redraw /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  Kompas6api5_tlb::ksComponentPositionerPtr __fastcall ComponentPositioner()
  {
    _TDispID _dispid(/* ComponentPositioner */ DISPID(61));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksComponentPositioner* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  Kompas6api5_tlb::ksPlacementPtr __fastcall DefaultPlacement()
  {
    _TDispID _dispid(/* DefaultPlacement */ DISPID(62));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksPlacement* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  long __fastcall ksIsSlaveSpcOpened()
  {
    _TDispID _dispid(/* ksIsSlaveSpcOpened */ DISPID(64));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetEditMacroObject()
  {
    _TDispID _dispid(/* GetEditMacroObject */ DISPID(65));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SaveAsEx(BSTR fileName, long SaveMode)
  {
    _TDispID _dispid(/* SaveAsEx */ DISPID(66));
    TAutoArgs<2> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = SaveMode /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetInterface(long o3dType)
  {
    _TDispID _dispid(/* GetInterface */ DISPID(67));
    TAutoArgs<1> _args;
    _args[1] = o3dType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall CopyPart(LPDISPATCH sourcePart, LPDISPATCH newPlacement)
  {
    _TDispID _dispid(/* CopyPart */ DISPID(69));
    TAutoArgs<2> _args;
    _args[1] = sourcePart /*[VT_DISPATCH:0]*/;
    _args[2] = newPlacement /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall UserSelectEntityEx(LPDISPATCH filterObject, BSTR methodName, BSTR prompt, 
                                           long hInst/*[def,opt]*/, LPDISPATCH val/*[def,opt]*/, 
                                           LPUNKNOWN processParam)
  {
    _TDispID _dispid(/* UserSelectEntityEx */ DISPID(71));
    TAutoArgs<6> _args;
    _args[1] = filterObject /*[VT_DISPATCH:0]*/;
    _args[2] = methodName /*[VT_BSTR:0]*/;
    _args[3] = prompt /*[VT_BSTR:0]*/;
    _args[4] = hInst /*[VT_I4:0]*/;
    _args[5] = val /*[VT_DISPATCH:0]*/;
    _args[6] = processParam /*[VT_UNKNOWN:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall PlaceFeatureAfter(LPDISPATCH obj, LPDISPATCH afterObj)
  {
    _TDispID _dispid(/* PlaceFeatureAfter */ DISPID(72));
    TAutoArgs<2> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    _args[2] = afterObj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetRollBackFeature(LPDISPATCH obj)
  {
    _TDispID _dispid(/* SetRollBackFeature */ DISPID(73));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetRollBackFeature()
  {
    _TDispID _dispid(/* GetRollBackFeature */ DISPID(74));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ExcludeFeaturesAfter(LPDISPATCH obj, TOLEBOOL exclude)
  {
    _TDispID _dispid(/* ExcludeFeaturesAfter */ DISPID(76));
    TAutoArgs<2> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    _args[2] = exclude /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetDocument3DNotifyResult()
  {
    _TDispID _dispid(/* GetDocument3DNotifyResult */ DISPID(83));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            fileName = {read = get_fileName, write = set_fileName};
  __property   BSTR            comment = {read = get_comment, write = set_comment};
  __property   BSTR            author = {read = get_author, write = set_author};
  __property   long            reference = {read = get_reference, write = set_reference};
  __property   TOLEBOOL        perspective = {read = get_perspective, write = set_perspective};
  __property   int             drawMode = {read = get_drawMode, write = set_drawMode};
  __property   TOLEBOOL        hideAllPlanes = {read = get_hideAllPlanes, write = set_hideAllPlanes};
  __property   TOLEBOOL        hideAllAxis = {read = get_hideAllAxis, write = set_hideAllAxis};
  __property   TOLEBOOL        hideAllSketches = {read = get_hideAllSketches, write = set_hideAllSketches};
  __property   TOLEBOOL        hideAllPlaces = {read = get_hideAllPlaces, write = set_hideAllPlaces};
  __property   TOLEBOOL        hideAllSurfaces = {read = get_hideAllSurfaces, write = set_hideAllSurfaces};
  __property   TOLEBOOL        hideAllThreads = {read = get_hideAllThreads, write = set_hideAllThreads};
  __property   TOLEBOOL        shadedWireframe = {read = get_shadedWireframe, write = set_shadedWireframe};
  __property   TOLEBOOL        dismantleMode = {read = get_dismantleMode, write = set_dismantleMode};
  __property   TOLEBOOL        treeNeedRebuild = {read = get_treeNeedRebuild, write = set_treeNeedRebuild};
  __property   TOLEBOOL        enableRollBackFeaturesInCollections = {read = get_enableRollBackFeaturesInCollections, write = set_enableRollBackFeaturesInCollections};
  __property   TOLEBOOL        hideAllCurves = {read = get_hideAllCurves, write = set_hideAllCurves};
  __property   TOLEBOOL        hideAllControlPoints = {read = get_hideAllControlPoints, write = set_hideAllControlPoints};
  __property   TOLEBOOL        hideAllDimensions = {read = get_hideAllDimensions, write = set_hideAllDimensions};
  __property   TOLEBOOL        hideAllDesignations = {read = get_hideAllDesignations, write = set_hideAllDesignations};
  __property   TOLEBOOL        hideAllAuxiliaryGeom = {read = get_hideAllAuxiliaryGeom, write = set_hideAllAuxiliaryGeom};
  __property   TOLEBOOL        hideInComponentsMode = {read = get_hideInComponentsMode, write = set_hideInComponentsMode};
  __property   TOLEBOOL        windowNeedRebuild = {read = get_windowNeedRebuild, write = set_windowNeedRebuild};
  __property   TOLEBOOL        invisibleMode = {read = get_invisibleMode};
};
// *********************************************************************//
// Interface: ksDocument3DNotify
// Flags:     (4096) Dispatchable
// GUID:      {B6C1BCFD-68DA-4A0A-A95C-296084C6A01A}
// *********************************************************************//
interface ksDocument3DNotify : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall BeginRebuild()
  {
    _TDispID _dispid(/* BeginRebuild */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Rebuild()
  {
    _TDispID _dispid(/* Rebuild */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginChoiceMaterial()
  {
    _TDispID _dispid(/* BeginChoiceMaterial */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ChoiceMaterial(BSTR material, double density)
  {
    _TDispID _dispid(/* ChoiceMaterial */ DISPID(4));
    TAutoArgs<2> _args;
    _args[1] = material /*[VT_BSTR:0]*/;
    _args[2] = density /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginChoiceMarking()
  {
    _TDispID _dispid(/* BeginChoiceMarking */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ChoiceMarking(BSTR marking)
  {
    _TDispID _dispid(/* ChoiceMarking */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = marking /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginSetPartFromFile()
  {
    _TDispID _dispid(/* BeginSetPartFromFile */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginCreatePartFromFile(TOLEBOOL typeDoc, Kompas6api5_tlb::ksEntityPtr plane)
  {
    _TDispID _dispid(/* BeginCreatePartFromFile */ DISPID(8));
    TAutoArgs<2> _args;
    _args[1] = typeDoc /*[VT_BOOL:0]*/;
    _args[2] = (LPDISPATCH)(Kompas6api5_tlb::ksEntity*)plane /*[VT_USERDEFINED:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksEntity
// Flags:     (4096) Dispatchable
// GUID:      {508A0CCA-9D74-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksEntity : public TDispWrapper<IDispatch>
{
  void __fastcall set_hidden(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* hidden */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_hidden()
  {
    _TDispID _dispid(/* hidden */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_name(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* name */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_name()
  {
    _TDispID _dispid(/* name */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_excluded(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* excluded */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_excluded()
  {
    _TDispID _dispid(/* excluded */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  short __fastcall get_type()
  {
    _TDispID _dispid(/* type */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetDefinition()
  {
    _TDispID _dispid(/* GetDefinition */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetParent()
  {
    _TDispID _dispid(/* GetParent */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsCreated()
  {
    _TDispID _dispid(/* IsCreated */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsIt(long objType)
  {
    _TDispID _dispid(/* IsIt */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = objType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Create()
  {
    _TDispID _dispid(/* Create */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall _Update()
  {
    _TDispID _dispid(/* Update */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ColorParam()
  {
    _TDispID _dispid(/* ColorParam */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetAdvancedColor(long* color, double* ambient, double* diffuse, 
                                       double* specularity, double* shininess, double* transparency
                                       , double* emission)
  {
    _TDispID _dispid(/* GetAdvancedColor */ DISPID(12));
    TAutoArgs<7> _args;
    _args[1] = color /*[VT_I4:1]*/;
    _args[2] = ambient /*[VT_R8:1]*/;
    _args[3] = diffuse /*[VT_R8:1]*/;
    _args[4] = specularity /*[VT_R8:1]*/;
    _args[5] = shininess /*[VT_R8:1]*/;
    _args[6] = transparency /*[VT_R8:1]*/;
    _args[7] = emission /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetAdvancedColor(long color, double ambient/*[def,opt]*/, 
                                       double diffuse/*[def,opt]*/, double specularity/*[def,opt]*/
                                       , double shininess/*[def,opt]*/, 
                                       double transparency/*[def,opt]*/, 
                                       double emission/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetAdvancedColor */ DISPID(13));
    TAutoArgs<7> _args;
    _args[1] = color /*[VT_I4:0]*/;
    _args[2] = ambient /*[VT_R8:0]*/;
    _args[3] = diffuse /*[VT_R8:0]*/;
    _args[4] = specularity /*[VT_R8:0]*/;
    _args[5] = shininess /*[VT_R8:0]*/;
    _args[6] = transparency /*[VT_R8:0]*/;
    _args[7] = emission /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetFeature()
  {
    _TDispID _dispid(/* GetFeature */ DISPID(14));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall BodyCollection()
  {
    _TDispID _dispid(/* BodyCollection */ DISPID(15));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall get_MultiBodyParts()
  {
    _TDispID _dispid(/* MultiBodyParts */ DISPID(16));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetBodyParts()
  {
    _TDispID _dispid(/* GetBodyParts */ DISPID(17));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        hidden = {read = get_hidden, write = set_hidden};
  __property   BSTR            name = {read = get_name, write = set_name};
  __property   TOLEBOOL        excluded = {read = get_excluded, write = set_excluded};
  __property   short           type = {read = get_type};
  __property   TOLEBOOL        MultiBodyParts = {read = get_MultiBodyParts};
};
// *********************************************************************//
// Interface: ksAttribute3DCollection
// Flags:     (4096) Dispatchable
// GUID:      {EB61A981-F63E-47E1-BEE8-2D1612C78E78}
// *********************************************************************//
interface ksAttribute3DCollection : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall refresh()
  {
    _TDispID _dispid(/* refresh */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetCount()
  {
    _TDispID _dispid(/* GetCount */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  Kompas6api5_tlb::ksAttribute3DPtr __fastcall First()
  {
    _TDispID _dispid(/* First */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksAttribute3D* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  Kompas6api5_tlb::ksAttribute3DPtr __fastcall Last()
  {
    _TDispID _dispid(/* Last */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksAttribute3D* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  Kompas6api5_tlb::ksAttribute3DPtr __fastcall Next()
  {
    _TDispID _dispid(/* Next */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksAttribute3D* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  Kompas6api5_tlb::ksAttribute3DPtr __fastcall Prev()
  {
    _TDispID _dispid(/* Prev */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksAttribute3D* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  Kompas6api5_tlb::ksAttribute3DPtr __fastcall GetByIndex(long index)
  {
    _TDispID _dispid(/* GetByIndex */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksAttribute3D* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  long __fastcall FindIt(Kompas6api5_tlb::ksAttribute3DPtr obj)
  {
    _TDispID _dispid(/* FindIt */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksAttribute3D*)obj /*[VT_USERDEFINED:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Select(long key1, long key2, long key3, long key4, double numb, long objType)
  {
    _TDispID _dispid(/* Select */ DISPID(9));
    TAutoArgs<6> _args;
    _args[1] = key1 /*[VT_I4:0]*/;
    _args[2] = key2 /*[VT_I4:0]*/;
    _args[3] = key3 /*[VT_I4:0]*/;
    _args[4] = key4 /*[VT_I4:0]*/;
    _args[5] = numb /*[VT_R8:0]*/;
    _args[6] = objType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksAttribute3D
// Flags:     (4096) Dispatchable
// GUID:      {3EEB2B43-56FF-49C0-AFCF-69E990A7D84C}
// *********************************************************************//
interface ksAttribute3D : public TDispWrapper<IDispatch>
{
  long __fastcall get_reference()
  {
    _TDispID _dispid(/* reference */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  Kompas6api5_tlb::ksFeatureCollectionPtr __fastcall FeatureCollection(long objType)
  {
    _TDispID _dispid(/* FeatureCollection */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = objType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksFeatureCollection* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  BSTR __fastcall get_nameType()
  {
    _TDispID _dispid(/* nameType */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            reference = {read = get_reference};
  __property   BSTR            nameType = {read = get_nameType};
};
// *********************************************************************//
// Interface: ksFeatureCollection
// Flags:     (4096) Dispatchable
// GUID:      {CE6A46FF-02B4-4C7E-AF50-3F3707C8B122}
// *********************************************************************//
interface ksFeatureCollection : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall refresh()
  {
    _TDispID _dispid(/* refresh */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetCount()
  {
    _TDispID _dispid(/* GetCount */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  Kompas6api5_tlb::ksFeaturePtr __fastcall First()
  {
    _TDispID _dispid(/* First */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksFeature* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  Kompas6api5_tlb::ksFeaturePtr __fastcall Last()
  {
    _TDispID _dispid(/* Last */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksFeature* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  Kompas6api5_tlb::ksFeaturePtr __fastcall Next()
  {
    _TDispID _dispid(/* Next */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksFeature* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  Kompas6api5_tlb::ksFeaturePtr __fastcall Prev()
  {
    _TDispID _dispid(/* Prev */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksFeature* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  Kompas6api5_tlb::ksFeaturePtr __fastcall GetByIndex(long index)
  {
    _TDispID _dispid(/* GetByIndex */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksFeature* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  Kompas6api5_tlb::ksFeaturePtr __fastcall GetByName(BSTR name, TOLEBOOL testFullName/*[def,opt]*/, 
                                                     TOLEBOOL testIgnoreCase/*[def,opt]*/)
  {
    _TDispID _dispid(/* GetByName */ DISPID(8));
    TAutoArgs<3> _args;
    _args[1] = name /*[VT_BSTR:0]*/;
    _args[2] = testFullName /*[VT_BOOL:0]*/;
    _args[3] = testIgnoreCase /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksFeature* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  long __fastcall FindIt(Kompas6api5_tlb::ksFeaturePtr entity)
  {
    _TDispID _dispid(/* FindIt */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksFeature*)entity /*[VT_USERDEFINED:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Add(Kompas6api5_tlb::ksFeaturePtr obj)
  {
    _TDispID _dispid(/* Add */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksFeature*)obj /*[VT_USERDEFINED:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall AddAt(Kompas6api5_tlb::ksFeaturePtr obj, long index)
  {
    _TDispID _dispid(/* AddAt */ DISPID(11));
    TAutoArgs<2> _args;
    _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksFeature*)obj /*[VT_USERDEFINED:1]*/;
    _args[2] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall AddBefore(Kompas6api5_tlb::ksFeaturePtr obj, 
                                Kompas6api5_tlb::ksFeaturePtr base)
  {
    _TDispID _dispid(/* AddBefore */ DISPID(12));
    TAutoArgs<2> _args;
    _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksFeature*)obj /*[VT_USERDEFINED:1]*/;
    _args[2] = (LPDISPATCH)(Kompas6api5_tlb::ksFeature*)base /*[VT_USERDEFINED:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DetachByIndex(long index)
  {
    _TDispID _dispid(/* DetachByIndex */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DetachByBody(Kompas6api5_tlb::ksFeaturePtr obj)
  {
    _TDispID _dispid(/* DetachByBody */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksFeature*)obj /*[VT_USERDEFINED:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Clear()
  {
    _TDispID _dispid(/* Clear */ DISPID(15));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetByIndex(Kompas6api5_tlb::ksFeaturePtr obj, long index)
  {
    _TDispID _dispid(/* SetByIndex */ DISPID(16));
    TAutoArgs<2> _args;
    _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksFeature*)obj /*[VT_USERDEFINED:1]*/;
    _args[2] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  Kompas6api5_tlb::ksAttribute3DCollectionPtr __fastcall AttributeCollection(long key1, long key2, 
                                                                             long key3, long key4, 
                                                                             double numb)
  {
    _TDispID _dispid(/* AttributeCollection */ DISPID(17));
    TAutoArgs<5> _args;
    _args[1] = key1 /*[VT_I4:0]*/;
    _args[2] = key2 /*[VT_I4:0]*/;
    _args[3] = key3 /*[VT_I4:0]*/;
    _args[4] = key4 /*[VT_I4:0]*/;
    _args[5] = numb /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksAttribute3DCollection* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksFeature
// Flags:     (4096) Dispatchable
// GUID:      {088BF9A8-37D3-4B15-A7CA-8C52FF1DBC41}
// *********************************************************************//
interface ksFeature : public TDispWrapper<IDispatch>
{
  void __fastcall set_excluded(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* excluded */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_excluded()
  {
    _TDispID _dispid(/* excluded */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall get_name()
  {
    _TDispID _dispid(/* name */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  unsigned_long __fastcall get_updateStamp()
  {
    _TDispID _dispid(/* updateStamp */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsModified(TOLEBOOL recursive)
  {
    _TDispID _dispid(/* IsModified */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = recursive /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall SubFeatureCollection(TOLEBOOL through, TOLEBOOL libObject)
  {
    _TDispID _dispid(/* SubFeatureCollection */ DISPID(4));
    TAutoArgs<2> _args;
    _args[1] = through /*[VT_BOOL:0]*/;
    _args[2] = libObject /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetOwnerFeature()
  {
    _TDispID _dispid(/* GetOwnerFeature */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsValid()
  {
    _TDispID _dispid(/* IsValid */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  short __fastcall get_type()
  {
    _TDispID _dispid(/* type */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetObject()
  {
    _TDispID _dispid(/* GetObject */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  Kompas6api5_tlb::ksAttribute3DCollectionPtr __fastcall AttributeCollection(long key1, long key2, 
                                                                             long key3, long key4, 
                                                                             double numb)
  {
    _TDispID _dispid(/* AttributeCollection */ DISPID(10));
    TAutoArgs<5> _args;
    _args[1] = key1 /*[VT_I4:0]*/;
    _args[2] = key2 /*[VT_I4:0]*/;
    _args[3] = key3 /*[VT_I4:0]*/;
    _args[4] = key4 /*[VT_I4:0]*/;
    _args[5] = numb /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksAttribute3DCollection* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  Kompas6api5_tlb::ksEntityCollectionPtr __fastcall EntityCollection(short objType)
  {
    _TDispID _dispid(/* EntityCollection */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = objType /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksEntityCollection* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  LPDISPATCH __fastcall get_VariableCollection()
  {
    _TDispID _dispid(/* VariableCollection */ DISPID(12));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall BodyCollection()
  {
    _TDispID _dispid(/* BodyCollection */ DISPID(13));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  Kompas6api5_tlb::ksAttribute3DCollectionPtr __fastcall GetAttributeCollectionInSource(long key1, 
                                                                                        long key2, 
                                                                                        long key3, 
                                                                                        long key4, 
                                                                                        double numb
                                                                                        , 
                                                                                        Kompas6api5_tlb::ksPartPtr sourcePart)
  {
    _TDispID _dispid(/* GetAttributeCollectionInSource */ DISPID(14));
    TAutoArgs<6> _args;
    _args[1] = key1 /*[VT_I4:0]*/;
    _args[2] = key2 /*[VT_I4:0]*/;
    _args[3] = key3 /*[VT_I4:0]*/;
    _args[4] = key4 /*[VT_I4:0]*/;
    _args[5] = numb /*[VT_R8:0]*/;
    _args[6] = (LPDISPATCH)(Kompas6api5_tlb::ksPart*)sourcePart /*[VT_USERDEFINED:1]*/;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksAttribute3DCollection* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsRollBacked()
  {
    _TDispID _dispid(/* IsRollBacked */ DISPID(15));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall VariableCollectionEx(TOLEBOOL sourse)
  {
    _TDispID _dispid(/* VariableCollectionEx */ DISPID(16));
    TAutoArgs<1> _args;
    _args[1] = sourse /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_objectError()
  {
    _TDispID _dispid(/* objectError */ DISPID(17));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        excluded = {read = get_excluded, write = set_excluded};
  __property   BSTR            name = {read = get_name};
  __property   unsigned_long   updateStamp = {read = get_updateStamp};
  __property   short           type = {read = get_type};
  __property   LPDISPATCH      VariableCollection = {read = get_VariableCollection};
  __property   long            objectError = {read = get_objectError};
};
// *********************************************************************//
// Interface: ksEntityCollection
// Flags:     (4096) Dispatchable
// GUID:      {B0170141-C02C-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksEntityCollection : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall refresh()
  {
    _TDispID _dispid(/* refresh */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetCount()
  {
    _TDispID _dispid(/* GetCount */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall First()
  {
    _TDispID _dispid(/* First */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Last()
  {
    _TDispID _dispid(/* Last */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Next()
  {
    _TDispID _dispid(/* Next */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Prev()
  {
    _TDispID _dispid(/* Prev */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetByIndex(long index)
  {
    _TDispID _dispid(/* GetByIndex */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SelectByPoint(double x, double y, double z)
  {
    _TDispID _dispid(/* SelectByPoint */ DISPID(8));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = z /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetByName(BSTR name, TOLEBOOL testFullName/*[def,opt]*/, 
                                  TOLEBOOL testIgnoreCase/*[def,opt]*/)
  {
    _TDispID _dispid(/* GetByName */ DISPID(9));
    TAutoArgs<3> _args;
    _args[1] = name /*[VT_BSTR:0]*/;
    _args[2] = testFullName /*[VT_BOOL:0]*/;
    _args[3] = testIgnoreCase /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Add(LPDISPATCH entity)
  {
    _TDispID _dispid(/* Add */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall AddAt(LPDISPATCH entity, long index)
  {
    _TDispID _dispid(/* AddAt */ DISPID(11));
    TAutoArgs<2> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    _args[2] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall AddBefore(LPDISPATCH entity, LPDISPATCH base)
  {
    _TDispID _dispid(/* AddBefore */ DISPID(12));
    TAutoArgs<2> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    _args[2] = base /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DetachByIndex(long index)
  {
    _TDispID _dispid(/* DetachByIndex */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DetachByBody(LPDISPATCH entity)
  {
    _TDispID _dispid(/* DetachByBody */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Clear()
  {
    _TDispID _dispid(/* Clear */ DISPID(15));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetByIndex(LPDISPATCH entity, long index)
  {
    _TDispID _dispid(/* SetByIndex */ DISPID(16));
    TAutoArgs<2> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    _args[2] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall FindIt(LPDISPATCH entity)
  {
    _TDispID _dispid(/* FindIt */ DISPID(17));
    TAutoArgs<1> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksPart
// Flags:     (4096) Dispatchable
// GUID:      {508A0CCD-9D74-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksPart : public TDispWrapper<IDispatch>
{
  void __fastcall set_name(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* name */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_name()
  {
    _TDispID _dispid(/* name */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_marking(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* marking */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_marking()
  {
    _TDispID _dispid(/* marking */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_fixedComponent(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* fixedComponent */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_fixedComponent()
  {
    _TDispID _dispid(/* fixedComponent */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_standardComponent(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* standardComponent */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_standardComponent()
  {
    _TDispID _dispid(/* standardComponent */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_fileName(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* fileName */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_fileName()
  {
    _TDispID _dispid(/* fileName */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_excluded(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* excluded */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_excluded()
  {
    _TDispID _dispid(/* excluded */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_useColor(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* useColor */ DISPID(38));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_useColor()
  {
    _TDispID _dispid(/* useColor */ DISPID(38));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_needRebuild(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* needRebuild */ DISPID(43));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_needRebuild()
  {
    _TDispID _dispid(/* needRebuild */ DISPID(43));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_hidden(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* hidden */ DISPID(46));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_hidden()
  {
    _TDispID _dispid(/* hidden */ DISPID(46));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_DoubleClickEditOff(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* DoubleClickEditOff */ DISPID(52));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_DoubleClickEditOff()
  {
    _TDispID _dispid(/* DoubleClickEditOff */ DISPID(52));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall get_material()
  {
    _TDispID _dispid(/* material */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPlacement(LPDISPATCH placement)
  {
    _TDispID _dispid(/* SetPlacement */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = placement /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlacement()
  {
    _TDispID _dispid(/* GetPlacement */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ColorParam()
  {
    _TDispID _dispid(/* ColorParam */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall VariableCollection()
  {
    _TDispID _dispid(/* VariableCollection */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall _Update()
  {
    _TDispID _dispid(/* Update */ DISPID(12));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetUserParamSize()
  {
    _TDispID _dispid(/* GetUserParamSize */ DISPID(13));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall UpdatePlacement()
  {
    _TDispID _dispid(/* UpdatePlacement */ DISPID(14));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall RebuildModel()
  {
    _TDispID _dispid(/* RebuildModel */ DISPID(15));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetDefaultEntity(short objType)
  {
    _TDispID _dispid(/* GetDefaultEntity */ DISPID(16));
    TAutoArgs<1> _args;
    _args[1] = objType /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall NewEntity(short objType)
  {
    _TDispID _dispid(/* NewEntity */ DISPID(17));
    TAutoArgs<1> _args;
    _args[1] = objType /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall EntityCollection(short objType)
  {
    _TDispID _dispid(/* EntityCollection */ DISPID(18));
    TAutoArgs<1> _args;
    _args[1] = objType /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetAdvancedColor(long* color, double* ambient, double* diffuse, 
                                       double* specularity, double* shininess, double* transparency
                                       , double* emission)
  {
    _TDispID _dispid(/* GetAdvancedColor */ DISPID(19));
    TAutoArgs<7> _args;
    _args[1] = color /*[VT_I4:1]*/;
    _args[2] = ambient /*[VT_R8:1]*/;
    _args[3] = diffuse /*[VT_R8:1]*/;
    _args[4] = specularity /*[VT_R8:1]*/;
    _args[5] = shininess /*[VT_R8:1]*/;
    _args[6] = transparency /*[VT_R8:1]*/;
    _args[7] = emission /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetAdvancedColor(long color, double ambient/*[def,opt]*/, 
                                       double diffuse/*[def,opt]*/, double specularity/*[def,opt]*/
                                       , double shininess/*[def,opt]*/, 
                                       double transparency/*[def,opt]*/, 
                                       double emission/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetAdvancedColor */ DISPID(20));
    TAutoArgs<7> _args;
    _args[1] = color /*[VT_I4:0]*/;
    _args[2] = ambient /*[VT_R8:0]*/;
    _args[3] = diffuse /*[VT_R8:0]*/;
    _args[4] = specularity /*[VT_R8:0]*/;
    _args[5] = shininess /*[VT_R8:0]*/;
    _args[6] = transparency /*[VT_R8:0]*/;
    _args[7] = emission /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetUserParam(LPDISPATCH userPars)
  {
    _TDispID _dispid(/* SetUserParam */ DISPID(21));
    TAutoArgs<1> _args;
    _args[1] = userPars /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsDetail()
  {
    _TDispID _dispid(/* IsDetail */ DISPID(22));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall BeginEdit()
  {
    _TDispID _dispid(/* BeginEdit */ DISPID(23));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall EndEdit(TOLEBOOL Rebuild)
  {
    _TDispID _dispid(/* EndEdit */ DISPID(24));
    TAutoArgs<1> _args;
    _args[1] = Rebuild /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPart(short type)
  {
    _TDispID _dispid(/* GetPart */ DISPID(25));
    TAutoArgs<1> _args;
    _args[1] = type /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetMass()
  {
    _TDispID _dispid(/* GetMass */ DISPID(26));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall PutStorage(BSTR fileName, long type, TOLEBOOL mirror)
  {
    _TDispID _dispid(/* PutStorage */ DISPID(27));
    TAutoArgs<3> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = type /*[VT_I4:0]*/;
    _args[3] = mirror /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetMateConstraintObjects(LPDISPATCH collection)
  {
    _TDispID _dispid(/* SetMateConstraintObjects */ DISPID(28));
    TAutoArgs<1> _args;
    _args[1] = collection /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetMateConstraintObjects()
  {
    _TDispID _dispid(/* GetMateConstraintObjects */ DISPID(29));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetUserParam(LPDISPATCH userPars)
  {
    _TDispID _dispid(/* GetUserParam */ DISPID(30));
    TAutoArgs<1> _args;
    _args[1] = userPars /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_density()
  {
    _TDispID _dispid(/* density */ DISPID(31));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetMaterial(BSTR material, double density)
  {
    _TDispID _dispid(/* SetMaterial */ DISPID(32));
    TAutoArgs<2> _args;
    _args[1] = material /*[VT_BSTR:0]*/;
    _args[2] = density /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall BodyCollection()
  {
    _TDispID _dispid(/* BodyCollection */ DISPID(33));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetFeature()
  {
    _TDispID _dispid(/* GetFeature */ DISPID(34));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall CalcMassInertiaProperties(unsigned_long bitVector)
  {
    _TDispID _dispid(/* CalcMassInertiaProperties */ DISPID(35));
    TAutoArgs<1> _args;
    _args[1] = bitVector /*[VT_UI4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetMeasurer()
  {
    _TDispID _dispid(/* GetMeasurer */ DISPID(36));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetMainBody()
  {
    _TDispID _dispid(/* GetMainBody */ DISPID(37));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  Kompas6api5_tlb::Object3DNotifyPtr __fastcall GetObject3DNotify(long objType, LPDISPATCH obj)
  {
    _TDispID _dispid(/* GetObject3DNotify */ DISPID(39));
    TAutoArgs<2> _args;
    _args[1] = objType /*[VT_I4:0]*/;
    _args[2] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return Kompas6api5_tlb::Object3DNotifyPtr( (LPUNKNOWN) /*[VT_UNKNOWN:1]*/_args.GetRetVariant(), false );
  }

  Kompas6api5_tlb::ksObject3DNotifyResultPtr __fastcall GetObject3DNotifyResult()
  {
    _TDispID _dispid(/* GetObject3DNotifyResult */ DISPID(40));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksObject3DNotifyResult* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  TOLEBOOL __fastcall UpdatePlacementEx(TOLEBOOL redraw)
  {
    _TDispID _dispid(/* UpdatePlacementEx */ DISPID(41));
    TAutoArgs<1> _args;
    _args[1] = redraw /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall RebuildModelEx(TOLEBOOL redraw)
  {
    _TDispID _dispid(/* RebuildModelEx */ DISPID(42));
    TAutoArgs<1> _args;
    _args[1] = redraw /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall CurveIntersection(LPDISPATCH curve, LPDISPATCH parts, LPDISPATCH fases, 
                                        LPDISPATCH points)
  {
    _TDispID _dispid(/* CurveIntersection */ DISPID(44));
    TAutoArgs<4> _args;
    _args[1] = curve /*[VT_DISPATCH:0]*/;
    _args[2] = parts /*[VT_DISPATCH:0]*/;
    _args[3] = fases /*[VT_DISPATCH:0]*/;
    _args[4] = points /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall TransformPoint(double* x, double* y, double* z, LPDISPATCH part1)
  {
    _TDispID _dispid(/* TransformPoint */ DISPID(45));
    TAutoArgs<4> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    _args[3] = z /*[VT_R8:1]*/;
    _args[4] = part1 /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetObject(long index, LPDISPATCH obj)
  {
    _TDispID _dispid(/* SetObject */ DISPID(47));
    TAutoArgs<2> _args;
    _args[1] = index /*[VT_I4:0]*/;
    _args[2] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetObject(long index)
  {
    _TDispID _dispid(/* GetObject */ DISPID(48));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetCountObj()
  {
    _TDispID _dispid(/* GetCountObj */ DISPID(49));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ClearAllObj()
  {
    _TDispID _dispid(/* ClearAllObj */ DISPID(50));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall CreateOrEditObject(short objType, LPDISPATCH editObj)
  {
    _TDispID _dispid(/* CreateOrEditObject */ DISPID(51));
    TAutoArgs<2> _args;
    _args[1] = objType /*[VT_I2:0]*/;
    _args[2] = editObj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall TransformPoints(TVariant* points, LPDISPATCH part1)
  {
    _TDispID _dispid(/* TransformPoints */ DISPID(53));
    TAutoArgs<2> _args;
    _args[1] = points /*[VT_VARIANT:1]*/;
    _args[2] = part1 /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TVariant __fastcall GetSummMatrix(LPDISPATCH part1)
  {
    _TDispID _dispid(/* GetSummMatrix */ DISPID(54));
    TAutoArgs<1> _args;
    _args[1] = part1 /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall get_MultiBodyParts()
  {
    _TDispID _dispid(/* MultiBodyParts */ DISPID(55));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSourceVariables(TOLEBOOL Rebuild)
  {
    _TDispID _dispid(/* SetSourceVariables */ DISPID(56));
    TAutoArgs<1> _args;
    _args[1] = Rebuild /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetObjectByName(BSTR name, short objType, TOLEBOOL testFullName, 
                                        TOLEBOOL testIgnoreCase)
  {
    _TDispID _dispid(/* GetObjectByName */ DISPID(57));
    TAutoArgs<4> _args;
    _args[1] = name /*[VT_BSTR:0]*/;
    _args[2] = objType /*[VT_I2:0]*/;
    _args[3] = testFullName /*[VT_BOOL:0]*/;
    _args[4] = testIgnoreCase /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

   TOLEBOOL __fastcall GetGabarit(TOLEBOOL full, TOLEBOOL customizable, double* x1, double* y1, 
                                 double* z1, double* x2, double* y2, double* z2)
  {
    _TDispID _dispid(/* GetGabarit */ DISPID(58));
    TAutoArgs<8> _args;
    _args[1] = full /*[VT_BOOL:0]*/;
    _args[2] = customizable /*[VT_BOOL:0]*/;
    _args[3] = x1 /*[VT_R8:1]*/;
    _args[4] = y1 /*[VT_R8:1]*/;
    _args[5] = z1 /*[VT_R8:1]*/;
    _args[6] = x2 /*[VT_R8:1]*/;
    _args[7] = y2 /*[VT_R8:1]*/;
    _args[8] = z2 /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            name = {read = get_name, write = set_name};
  __property   BSTR            marking = {read = get_marking, write = set_marking};
  __property   TOLEBOOL        fixedComponent = {read = get_fixedComponent, write = set_fixedComponent};
  __property   TOLEBOOL        standardComponent = {read = get_standardComponent, write = set_standardComponent};
  __property   BSTR            fileName = {read = get_fileName, write = set_fileName};
  __property   TOLEBOOL        excluded = {read = get_excluded, write = set_excluded};
  __property   long            useColor = {read = get_useColor, write = set_useColor};
  __property   TOLEBOOL        needRebuild = {read = get_needRebuild, write = set_needRebuild};
  __property   TOLEBOOL        hidden = {read = get_hidden, write = set_hidden};
  __property   TOLEBOOL        DoubleClickEditOff = {read = get_DoubleClickEditOff, write = set_DoubleClickEditOff};
  __property   BSTR            material = {read = get_material};
  __property   double          density = {read = get_density};
  __property   TOLEBOOL        MultiBodyParts = {read = get_MultiBodyParts};
};
// *********************************************************************//
// Interface: ksObject3DNotify
// Flags:     (4096) Dispatchable
// GUID:      {BFA024B6-679E-4A95-B6C2-1EA47A7CD0E9}
// *********************************************************************//
interface ksObject3DNotify : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall BeginDelete(LPDISPATCH obj)
  {
    _TDispID _dispid(/* BeginDelete */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Delete(LPDISPATCH obj)
  {
    _TDispID _dispid(/* Delete */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall excluded(LPDISPATCH obj, TOLEBOOL excluded)
  {
    _TDispID _dispid(/* excluded */ DISPID(3));
    TAutoArgs<2> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    _args[2] = excluded /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall hidden(LPDISPATCH obj, TOLEBOOL _hidden)
  {
    _TDispID _dispid(/* hidden */ DISPID(4));
    TAutoArgs<2> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    _args[2] = _hidden /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginPropertyChanged(LPDISPATCH obj)
  {
    _TDispID _dispid(/* BeginPropertyChanged */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall PropertyChanged(LPDISPATCH obj)
  {
    _TDispID _dispid(/* PropertyChanged */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginPlacementChanged(LPDISPATCH obj)
  {
    _TDispID _dispid(/* BeginPlacementChanged */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall PlacementChanged(LPDISPATCH obj)
  {
    _TDispID _dispid(/* PlacementChanged */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginProcess(long pType, LPDISPATCH obj)
  {
    _TDispID _dispid(/* BeginProcess */ DISPID(9));
    TAutoArgs<2> _args;
    _args[1] = pType /*[VT_I4:0]*/;
    _args[2] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall EndProcess(long pType)
  {
    _TDispID _dispid(/* EndProcess */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = pType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall CreateObject(LPDISPATCH obj)
  {
    _TDispID _dispid(/* CreateObject */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall UpdateObject(LPDISPATCH obj)
  {
    _TDispID _dispid(/* UpdateObject */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksObject3DNotifyResult
// Flags:     (4096) Dispatchable
// GUID:      {9C3ECC92-E72F-4892-8921-7886F34CA9AD}
// *********************************************************************//
interface ksObject3DNotifyResult : public TDispWrapper<IDispatch>
{
  long __fastcall GetNotifyType()
  {
    _TDispID _dispid(/* GetNotifyType */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  Kompas6api5_tlb::ksFeatureCollectionPtr __fastcall GetFeatureCollection()
  {
    _TDispID _dispid(/* GetFeatureCollection */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksFeatureCollection* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  Kompas6api5_tlb::ksPlacementPtr __fastcall GetPlacement()
  {
    _TDispID _dispid(/* GetPlacement */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksPlacement* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  long __fastcall GetProcessType()
  {
    _TDispID _dispid(/* GetProcessType */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksPlacement
// Flags:     (4096) Dispatchable
// GUID:      {2DFACC64-C4A4-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksPlacement : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall GetOrigin(double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetOrigin */ DISPID(1));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    _args[3] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetOrigin(double x, double y, double z)
  {
    _TDispID _dispid(/* SetOrigin */ DISPID(2));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = z /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetAxis(double* x, double* y, double* z, long type)
  {
    _TDispID _dispid(/* GetAxis */ DISPID(3));
    TAutoArgs<4> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    _args[3] = z /*[VT_R8:1]*/;
    _args[4] = type /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetAxis(double x, double y, double z, long type)
  {
    _TDispID _dispid(/* SetAxis */ DISPID(4));
    TAutoArgs<4> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = z /*[VT_R8:0]*/;
    _args[4] = type /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPlacement(LPDISPATCH placement)
  {
    _TDispID _dispid(/* SetPlacement */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = placement /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetAxes(double Xx, double Xy, double Xz, double Yx, double Yy, double Yz)
  {
    _TDispID _dispid(/* SetAxes */ DISPID(6));
    TAutoArgs<6> _args;
    _args[1] = Xx /*[VT_R8:0]*/;
    _args[2] = Xy /*[VT_R8:0]*/;
    _args[3] = Xz /*[VT_R8:0]*/;
    _args[4] = Yx /*[VT_R8:0]*/;
    _args[5] = Yy /*[VT_R8:0]*/;
    _args[6] = Yz /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall PointProjection(double XIn, double YIn, double ZIn, double* XOut, double* YOut)
  {
    _TDispID _dispid(/* PointProjection */ DISPID(7));
    TAutoArgs<5> _args;
    _args[1] = XIn /*[VT_R8:0]*/;
    _args[2] = YIn /*[VT_R8:0]*/;
    _args[3] = ZIn /*[VT_R8:0]*/;
    _args[4] = XOut /*[VT_R8:1]*/;
    _args[5] = YOut /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall PointOn(double XIn, double YIn, double* XOut, double* YOut, double* ZOut)
  {
    _TDispID _dispid(/* PointOn */ DISPID(8));
    TAutoArgs<5> _args;
    _args[1] = XIn /*[VT_R8:0]*/;
    _args[2] = YIn /*[VT_R8:0]*/;
    _args[3] = XOut /*[VT_R8:1]*/;
    _args[4] = YOut /*[VT_R8:1]*/;
    _args[5] = ZOut /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksComponentPositioner
// Flags:     (4096) Dispatchable
// GUID:      {508B5962-DF59-4CEE-8611-AD10FDF0C811}
// *********************************************************************//
interface ksComponentPositioner : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall SetPlaneByPlacement(Kompas6api5_tlb::ksPlacementPtr plane)
  {
    _TDispID _dispid(/* SetPlaneByPlacement */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksPlacement*)plane /*[VT_USERDEFINED:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPlane(LPDISPATCH plane)
  {
    _TDispID _dispid(/* SetPlane */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = plane /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPlaneByPoints(double x1, double y1, double z1, double x2, double y2, 
                                       double z2, double x3, double y3, double z3)
  {
    _TDispID _dispid(/* SetPlaneByPoints */ DISPID(3));
    TAutoArgs<9> _args;
    _args[1] = x1 /*[VT_R8:0]*/;
    _args[2] = y1 /*[VT_R8:0]*/;
    _args[3] = z1 /*[VT_R8:0]*/;
    _args[4] = x2 /*[VT_R8:0]*/;
    _args[5] = y2 /*[VT_R8:0]*/;
    _args[6] = z2 /*[VT_R8:0]*/;
    _args[7] = x3 /*[VT_R8:0]*/;
    _args[8] = y3 /*[VT_R8:0]*/;
    _args[9] = z3 /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetDragPoint(double x, double y, double z)
  {
    _TDispID _dispid(/* SetDragPoint */ DISPID(4));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = z /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetAxis(LPDISPATCH axis)
  {
    _TDispID _dispid(/* SetAxis */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = axis /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetAxisByPoints(double x1, double y1, double z1, double x2, double y2, 
                                      double z2)
  {
    _TDispID _dispid(/* SetAxisByPoints */ DISPID(6));
    TAutoArgs<6> _args;
    _args[1] = x1 /*[VT_R8:0]*/;
    _args[2] = y1 /*[VT_R8:0]*/;
    _args[3] = z1 /*[VT_R8:0]*/;
    _args[4] = x2 /*[VT_R8:0]*/;
    _args[5] = y2 /*[VT_R8:0]*/;
    _args[6] = z2 /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall Prepare(Kompas6api5_tlb::ksPartPtr part, long positionerType)
  {
    _TDispID _dispid(/* Prepare */ DISPID(7));
    TAutoArgs<2> _args;
    _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksPart*)part /*[VT_USERDEFINED:1]*/;
    _args[2] = positionerType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall MoveComponent(double x, double y, double z)
  {
    _TDispID _dispid(/* MoveComponent */ DISPID(8));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = z /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall RotateComponent(double angl)
  {
    _TDispID _dispid(/* RotateComponent */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = angl /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Finish()
  {
    _TDispID _dispid(/* Finish */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksKompasObjectNotify
// Flags:     (4096) Dispatchable
// GUID:      {C7CB743A-C59D-4C27-8CB6-971C2A393F2F}
// *********************************************************************//
interface ksKompasObjectNotify : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall CreateDocument(LPDISPATCH newDoc, long docType)
  {
    _TDispID _dispid(/* CreateDocument */ DISPID(1));
    TAutoArgs<2> _args;
    _args[1] = newDoc /*[VT_DISPATCH:0]*/;
    _args[2] = docType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginOpenDocument(BSTR fileName)
  {
    _TDispID _dispid(/* BeginOpenDocument */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall OpenDocument(LPDISPATCH newDoc, long docType)
  {
    _TDispID _dispid(/* OpenDocument */ DISPID(3));
    TAutoArgs<2> _args;
    _args[1] = newDoc /*[VT_DISPATCH:0]*/;
    _args[2] = docType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ChangeActiveDocument(LPDISPATCH newDoc, long docType)
  {
    _TDispID _dispid(/* ChangeActiveDocument */ DISPID(4));
    TAutoArgs<2> _args;
    _args[1] = newDoc /*[VT_DISPATCH:0]*/;
    _args[2] = docType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ApplicationDestroy()
  {
    _TDispID _dispid(/* ApplicationDestroy */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginCreate(long docType)
  {
    _TDispID _dispid(/* BeginCreate */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = docType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginOpenFile()
  {
    _TDispID _dispid(/* BeginOpenFile */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginCloseAllDocument()
  {
    _TDispID _dispid(/* BeginCloseAllDocument */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall KeyDown(long* key/*[in,out]*/, long flags/*[in]*/, TOLEBOOL systemKey)
  {
    _TDispID _dispid(/* KeyDown */ DISPID(9));
    TAutoArgs<3> _args;
    _args[1] = key /*[VT_I4:1]*/;
    _args[2] = flags /*[VT_I4:0]*/;
    _args[3] = systemKey /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall KeyUp(long* key/*[in,out]*/, long flags/*[in]*/, TOLEBOOL systemKey)
  {
    _TDispID _dispid(/* KeyUp */ DISPID(10));
    TAutoArgs<3> _args;
    _args[1] = key /*[VT_I4:1]*/;
    _args[2] = flags /*[VT_I4:0]*/;
    _args[3] = systemKey /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall KeyPress(long* key/*[in,out]*/, TOLEBOOL systemKey)
  {
    _TDispID _dispid(/* KeyPress */ DISPID(11));
    TAutoArgs<2> _args;
    _args[1] = key /*[VT_I4:1]*/;
    _args[2] = systemKey /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginReguestFiles(long requestID, TVariant* files)
  {
    _TDispID _dispid(/* BeginReguestFiles */ DISPID(12));
    TAutoArgs<2> _args;
    _args[1] = requestID /*[VT_I4:0]*/;
    _args[2] = files /*[VT_VARIANT:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksDocumentFileNotify
// Flags:     (4096) Dispatchable
// GUID:      {324C1A45-67AD-41FB-BE57-624F930646F1}
// *********************************************************************//
interface ksDocumentFileNotify : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall BeginCloseDocument()
  {
    _TDispID _dispid(/* BeginCloseDocument */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall CloseDocument()
  {
    _TDispID _dispid(/* CloseDocument */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginSaveDocument(BSTR fileName)
  {
    _TDispID _dispid(/* BeginSaveDocument */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SaveDocument()
  {
    _TDispID _dispid(/* SaveDocument */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Activate()
  {
    _TDispID _dispid(/* Activate */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Deactivate()
  {
    _TDispID _dispid(/* Deactivate */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginSaveAsDocument()
  {
    _TDispID _dispid(/* BeginSaveAsDocument */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DocumentFrameOpen(LPDISPATCH v)
  {
    _TDispID _dispid(/* DocumentFrameOpen */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = v /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ProcessActivate(long iD)
  {
    _TDispID _dispid(/* ProcessActivate */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = iD /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ProcessDeactivate(long iD)
  {
    _TDispID _dispid(/* ProcessDeactivate */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = iD /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksDocument3DNotifyResult
// Flags:     (4096) Dispatchable
// GUID:      {9F88CAAA-A50F-46F4-904A-846C792FA649}
// *********************************************************************//
interface ksDocument3DNotifyResult : public TDispWrapper<IDispatch>
{
  long __fastcall GetNotifyType()
  {
    _TDispID _dispid(/* GetNotifyType */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetNotifyObjectType()
  {
    _TDispID _dispid(/* GetNotifyObjectType */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetNotifyObject()
  {
    _TDispID _dispid(/* GetNotifyObject */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksSpecRoughParam
// Flags:     (4096) Dispatchable
// GUID:      {364521A3-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksSpecRoughParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_sign(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* sign */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_sign()
  {
    _TDispID _dispid(/* sign */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_t(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* t */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_t()
  {
    _TDispID _dispid(/* t */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_s(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* s */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_s()
  {
    _TDispID _dispid(/* s */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            style = {read = get_style, write = set_style};
  __property   short           sign = {read = get_sign, write = set_sign};
  __property   TOLEBOOL        t = {read = get_t, write = set_t};
  __property   BSTR            s = {read = get_s, write = set_s};
};
// *********************************************************************//
// Interface: ksEllipseParam
// Flags:     (4096) Dispatchable
// GUID:      {364521A6-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksEllipseParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_xc(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* xc */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_xc()
  {
    _TDispID _dispid(/* xc */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_yc(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* yc */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_yc()
  {
    _TDispID _dispid(/* yc */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_A(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* A */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_A()
  {
    _TDispID _dispid(/* A */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_B(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* B */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_B()
  {
    _TDispID _dispid(/* B */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_angle(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angle */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angle()
  {
    _TDispID _dispid(/* angle */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          xc = {read = get_xc, write = set_xc};
  __property   double          yc = {read = get_yc, write = set_yc};
  __property   double          A = {read = get_A, write = set_A};
  __property   double          B = {read = get_B, write = set_B};
  __property   double          angle = {read = get_angle, write = set_angle};
  __property   long            style = {read = get_style, write = set_style};
};
// *********************************************************************//
// Interface: ksEllipseArcParam
// Flags:     (4096) Dispatchable
// GUID:      {364521A9-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksEllipseArcParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_xc(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* xc */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_xc()
  {
    _TDispID _dispid(/* xc */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_yc(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* yc */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_yc()
  {
    _TDispID _dispid(/* yc */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_A(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* A */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_A()
  {
    _TDispID _dispid(/* A */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_B(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* B */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_B()
  {
    _TDispID _dispid(/* B */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_angle(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angle */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angle()
  {
    _TDispID _dispid(/* angle */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_angleFirst(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angleFirst */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angleFirst()
  {
    _TDispID _dispid(/* angleFirst */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_angleSecond(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angleSecond */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angleSecond()
  {
    _TDispID _dispid(/* angleSecond */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_direction(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* direction */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_direction()
  {
    _TDispID _dispid(/* direction */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          xc = {read = get_xc, write = set_xc};
  __property   double          yc = {read = get_yc, write = set_yc};
  __property   double          A = {read = get_A, write = set_A};
  __property   double          B = {read = get_B, write = set_B};
  __property   double          angle = {read = get_angle, write = set_angle};
  __property   double          angleFirst = {read = get_angleFirst, write = set_angleFirst};
  __property   double          angleSecond = {read = get_angleSecond, write = set_angleSecond};
  __property   double          direction = {read = get_direction, write = set_direction};
  __property   long            style = {read = get_style, write = set_style};
};
// *********************************************************************//
// Interface: ksEllipseArcParam1
// Flags:     (4096) Dispatchable
// GUID:      {364521AC-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksEllipseArcParam1 : public TDispWrapper<IDispatch>
{
  void __fastcall set_xc(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* xc */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_xc()
  {
    _TDispID _dispid(/* xc */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_yc(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* yc */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_yc()
  {
    _TDispID _dispid(/* yc */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_A(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* A */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_A()
  {
    _TDispID _dispid(/* A */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_B(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* B */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_B()
  {
    _TDispID _dispid(/* B */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_angle(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angle */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angle()
  {
    _TDispID _dispid(/* angle */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_parFirst(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* parFirst */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_parFirst()
  {
    _TDispID _dispid(/* parFirst */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_parSecond(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* parSecond */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_parSecond()
  {
    _TDispID _dispid(/* parSecond */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_direction(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* direction */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_direction()
  {
    _TDispID _dispid(/* direction */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          xc = {read = get_xc, write = set_xc};
  __property   double          yc = {read = get_yc, write = set_yc};
  __property   double          A = {read = get_A, write = set_A};
  __property   double          B = {read = get_B, write = set_B};
  __property   double          angle = {read = get_angle, write = set_angle};
  __property   double          parFirst = {read = get_parFirst, write = set_parFirst};
  __property   double          parSecond = {read = get_parSecond, write = set_parSecond};
  __property   double          direction = {read = get_direction, write = set_direction};
  __property   long            style = {read = get_style, write = set_style};
};
// *********************************************************************//
// Interface: ksEquidistantParam
// Flags:     (4096) Dispatchable
// GUID:      {364521AF-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksEquidistantParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_geoObj(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* geoObj */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_geoObj()
  {
    _TDispID _dispid(/* geoObj */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_side(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* side */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_side()
  {
    _TDispID _dispid(/* side */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_cutMode(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* cutMode */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_cutMode()
  {
    _TDispID _dispid(/* cutMode */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_degState(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* degState */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_degState()
  {
    _TDispID _dispid(/* degState */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_radRight(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* radRight */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_radRight()
  {
    _TDispID _dispid(/* radRight */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_radLeft(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* radLeft */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_radLeft()
  {
    _TDispID _dispid(/* radLeft */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            geoObj = {read = get_geoObj, write = set_geoObj};
  __property   short           side = {read = get_side, write = set_side};
  __property   TOLEBOOL        cutMode = {read = get_cutMode, write = set_cutMode};
  __property   TOLEBOOL        degState = {read = get_degState, write = set_degState};
  __property   double          radRight = {read = get_radRight, write = set_radRight};
  __property   double          radLeft = {read = get_radLeft, write = set_radLeft};
  __property   long            style = {read = get_style, write = set_style};
};
// *********************************************************************//
// Interface: ksParagraphParam
// Flags:     (4096) Dispatchable
// GUID:      {364521B2-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksParagraphParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x()
  {
    _TDispID _dispid(/* x */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y()
  {
    _TDispID _dispid(/* y */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ang(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* ang */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_ang()
  {
    _TDispID _dispid(/* ang */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_width(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* width */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_width()
  {
    _TDispID _dispid(/* width */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_height(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* height */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_height()
  {
    _TDispID _dispid(/* height */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_vFormat(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* vFormat */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_vFormat()
  {
    _TDispID _dispid(/* vFormat */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_hFormat(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* hFormat */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_hFormat()
  {
    _TDispID _dispid(/* hFormat */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            style = {read = get_style, write = set_style};
  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   double          width = {read = get_width, write = set_width};
  __property   double          height = {read = get_height, write = set_height};
  __property   long            vFormat = {read = get_vFormat, write = set_vFormat};
  __property   long            hFormat = {read = get_hFormat, write = set_hFormat};
};
// *********************************************************************//
// Interface: ksTextItemParam
// Flags:     (4096) Dispatchable
// GUID:      {364521B7-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksTextItemParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_type(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* type */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_type()
  {
    _TDispID _dispid(/* type */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_s(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* s */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_s()
  {
    _TDispID _dispid(/* s */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_iSNumb(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* iSNumb */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_iSNumb()
  {
    _TDispID _dispid(/* iSNumb */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetItemFont()
  {
    _TDispID _dispid(/* GetItemFont */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetItemFont(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetItemFont */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            type = {read = get_type, write = set_type};
  __property   BSTR            s = {read = get_s, write = set_s};
  __property   long            iSNumb = {read = get_iSNumb, write = set_iSNumb};
};
// *********************************************************************//
// Interface: ksTextLineParam
// Flags:     (4096) Dispatchable
// GUID:      {364521BA-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksTextLineParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetTextItemArr()
  {
    _TDispID _dispid(/* GetTextItemArr */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetTextItemArr(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetTextItemArr */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            style = {read = get_style, write = set_style};
};
// *********************************************************************//
// Interface: ksTextItemFont
// Flags:     (4096) Dispatchable
// GUID:      {364521BD-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksTextItemFont : public TDispWrapper<IDispatch>
{
  void __fastcall set_fontName(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* fontName */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_fontName()
  {
    _TDispID _dispid(/* fontName */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_height(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* height */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_height()
  {
    _TDispID _dispid(/* height */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ksu(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* ksu */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_ksu()
  {
    _TDispID _dispid(/* ksu */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_color(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* color */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_color()
  {
    _TDispID _dispid(/* color */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_bitVector(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* bitVector */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_bitVector()
  {
    _TDispID _dispid(/* bitVector */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetBitVectorValue(long val)
  {
    _TDispID _dispid(/* GetBitVectorValue */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetBitVectorValue(long val, TOLEBOOL state)
  {
    _TDispID _dispid(/* SetBitVectorValue */ DISPID(8));
    TAutoArgs<2> _args;
    _args[1] = val /*[VT_I4:0]*/;
    _args[2] = state /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            fontName = {read = get_fontName, write = set_fontName};
  __property   double          height = {read = get_height, write = set_height};
  __property   double          ksu = {read = get_ksu, write = set_ksu};
  __property   long            color = {read = get_color, write = set_color};
  __property   long            bitVector = {read = get_bitVector, write = set_bitVector};
};
// *********************************************************************//
// Interface: ksCornerParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C2501-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksCornerParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_index(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* index */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_index()
  {
    _TDispID _dispid(/* index */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_fillet(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* fillet */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_fillet()
  {
    _TDispID _dispid(/* fillet */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_l1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* l1 */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_l1()
  {
    _TDispID _dispid(/* l1 */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_l2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* l2 */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_l2()
  {
    _TDispID _dispid(/* l2 */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            index = {read = get_index, write = set_index};
  __property   TOLEBOOL        fillet = {read = get_fillet, write = set_fillet};
  __property   double          l1 = {read = get_l1, write = set_l1};
  __property   double          l2 = {read = get_l2, write = set_l2};
};
// *********************************************************************//
// Interface: ksContourParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C2504-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksContourParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            style = {read = get_style, write = set_style};
};
// *********************************************************************//
// Interface: ksLayerParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C2507-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksLayerParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_state(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* state */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_state()
  {
    _TDispID _dispid(/* state */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_color(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* color */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_color()
  {
    _TDispID _dispid(/* color */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_name(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* name */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_name()
  {
    _TDispID _dispid(/* name */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           state = {read = get_state, write = set_state};
  __property   long            color = {read = get_color, write = set_color};
  __property   BSTR            name = {read = get_name, write = set_name};
};
// *********************************************************************//
// Interface: ksLineParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C250A-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksLineParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_x(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x()
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y()
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_angle(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angle */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angle()
  {
    _TDispID _dispid(/* angle */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   double          angle = {read = get_angle, write = set_angle};
};
// *********************************************************************//
// Interface: ksRegularPolygonParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C250D-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksRegularPolygonParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_count(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* count */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_count()
  {
    _TDispID _dispid(/* count */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_xc(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* xc */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_xc()
  {
    _TDispID _dispid(/* xc */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_yc(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* yc */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_yc()
  {
    _TDispID _dispid(/* yc */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ang(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* ang */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_ang()
  {
    _TDispID _dispid(/* ang */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_radius(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* radius */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_radius()
  {
    _TDispID _dispid(/* radius */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_describe(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* describe */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_describe()
  {
    _TDispID _dispid(/* describe */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPCorner()
  {
    _TDispID _dispid(/* GetPCorner */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPCorner(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetPCorner */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            count = {read = get_count, write = set_count};
  __property   double          xc = {read = get_xc, write = set_xc};
  __property   double          yc = {read = get_yc, write = set_yc};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   double          radius = {read = get_radius, write = set_radius};
  __property   TOLEBOOL        describe = {read = get_describe, write = set_describe};
  __property   long            style = {read = get_style, write = set_style};
};
// *********************************************************************//
// Interface: ksRectangleParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C2510-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksRectangleParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_x(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x()
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y()
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ang(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* ang */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_ang()
  {
    _TDispID _dispid(/* ang */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_height(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* height */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_height()
  {
    _TDispID _dispid(/* height */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_width(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* width */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_width()
  {
    _TDispID _dispid(/* width */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPCorner()
  {
    _TDispID _dispid(/* GetPCorner */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPCorner(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetPCorner */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   double          height = {read = get_height, write = set_height};
  __property   double          width = {read = get_width, write = set_width};
  __property   long            style = {read = get_style, write = set_style};
};
// *********************************************************************//
// Interface: ksBaseParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C2513-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksBaseParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x1 */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x1()
  {
    _TDispID _dispid(/* x1 */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y1 */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y1()
  {
    _TDispID _dispid(/* y1 */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x2 */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x2()
  {
    _TDispID _dispid(/* x2 */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y2 */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y2()
  {
    _TDispID _dispid(/* y2 */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_type(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* type */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_type()
  {
    _TDispID _dispid(/* type */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_str(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* str */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_str()
  {
    _TDispID _dispid(/* str */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPTextItem()
  {
    _TDispID _dispid(/* GetPTextItem */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPTextItem(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetPTextItem */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            style = {read = get_style, write = set_style};
  __property   double          x1 = {read = get_x1, write = set_x1};
  __property   double          y1 = {read = get_y1, write = set_y1};
  __property   double          x2 = {read = get_x2, write = set_x2};
  __property   double          y2 = {read = get_y2, write = set_y2};
  __property   TOLEBOOL        type = {read = get_type, write = set_type};
  __property   BSTR            str = {read = get_str, write = set_str};
};
// *********************************************************************//
// Interface: ksLtVariant
// Flags:     (4096) Dispatchable
// GUID:      {E79C2516-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksLtVariant : public TDispWrapper<IDispatch>
{
  void __fastcall set_strVal(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* strVal */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_strVal()
  {
    _TDispID _dispid(/* strVal */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_shortVal(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* shortVal */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_shortVal()
  {
    _TDispID _dispid(/* shortVal */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_intVal(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* intVal */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_intVal()
  {
    _TDispID _dispid(/* intVal */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_longVal(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* longVal */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_longVal()
  {
    _TDispID _dispid(/* longVal */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_floatVal(float /*[VT_R4:0]*/ Value)
  {
    _TDispID _dispid(/* floatVal */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  float /*[VT_R4:0]*/ __fastcall get_floatVal()
  {
    _TDispID _dispid(/* floatVal */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_doubleVal(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* doubleVal */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_doubleVal()
  {
    _TDispID _dispid(/* doubleVal */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_charVal(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* charVal */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_charVal()
  {
    _TDispID _dispid(/* charVal */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_uCharVal(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* uCharVal */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_uCharVal()
  {
    _TDispID _dispid(/* uCharVal */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_uIntVal(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* uIntVal */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_uIntVal()
  {
    _TDispID _dispid(/* uIntVal */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_wstrVal(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* wstrVal */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_wstrVal()
  {
    _TDispID _dispid(/* wstrVal */ DISPID(12));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  short __fastcall get_valType()
  {
    _TDispID _dispid(/* valType */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            strVal = {read = get_strVal, write = set_strVal};
  __property   short           shortVal = {read = get_shortVal, write = set_shortVal};
  __property   long            intVal = {read = get_intVal, write = set_intVal};
  __property   long            longVal = {read = get_longVal, write = set_longVal};
  __property   float           floatVal = {read = get_floatVal, write = set_floatVal};
  __property   double          doubleVal = {read = get_doubleVal, write = set_doubleVal};
  __property   short           charVal = {read = get_charVal, write = set_charVal};
  __property   short           uCharVal = {read = get_uCharVal, write = set_uCharVal};
  __property   long            uIntVal = {read = get_uIntVal, write = set_uIntVal};
  __property   BSTR            wstrVal = {read = get_wstrVal, write = set_wstrVal};
  __property   short           valType = {read = get_valType};
};
// *********************************************************************//
// Interface: ksUserParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C2519-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksUserParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_fileName(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* fileName */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_fileName()
  {
    _TDispID _dispid(/* fileName */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_libName(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* libName */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_libName()
  {
    _TDispID _dispid(/* libName */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_number(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* number */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_number()
  {
    _TDispID _dispid(/* number */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_UserParams(TVariant /*[VT_VARIANT:0]*/ Value)
  {
    _TDispID _dispid(/* UserParams */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TVariant /*[VT_VARIANT:0]*/ __fastcall get_UserParams()
  {
    _TDispID _dispid(/* UserParams */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetUserArray()
  {
    _TDispID _dispid(/* GetUserArray */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetUserArray(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetUserArray */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            fileName = {read = get_fileName, write = set_fileName};
  __property   BSTR            libName = {read = get_libName, write = set_libName};
  __property   long            number = {read = get_number, write = set_number};
  __property   TVariant        UserParams = {read = get_UserParams, write = set_UserParams};
};
// *********************************************************************//
// Interface: ksMathPointParam
// Flags:     (4096) Dispatchable
// GUID:      {3198E121-9585-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksMathPointParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_x(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x()
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y()
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
};
// *********************************************************************//
// Interface: ksCurvePicture
// Flags:     (4096) Dispatchable
// GUID:      {910EC541-958D-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksCurvePicture : public TDispWrapper<IDispatch>
{
  LPDISPATCH __fastcall GetPolygon()
  {
    _TDispID _dispid(/* GetPolygon */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPolygon(LPDISPATCH polygon)
  {
    _TDispID _dispid(/* SetPolygon */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = polygon /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetFill()
  {
    _TDispID _dispid(/* GetFill */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetFill(LPDISPATCH fill)
  {
    _TDispID _dispid(/* SetFill */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = fill /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksCurvePattern
// Flags:     (4096) Dispatchable
// GUID:      {910EC544-958D-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksCurvePattern : public TDispWrapper<IDispatch>
{
  void __fastcall set_visibleSeg(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* visibleSeg */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_visibleSeg()
  {
    _TDispID _dispid(/* visibleSeg */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_invisibleSeg(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* invisibleSeg */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_invisibleSeg()
  {
    _TDispID _dispid(/* invisibleSeg */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          visibleSeg = {read = get_visibleSeg, write = set_visibleSeg};
  __property   double          invisibleSeg = {read = get_invisibleSeg, write = set_invisibleSeg};
};
// *********************************************************************//
// Interface: ksTAN
// Flags:     (4096) Dispatchable
// GUID:      {8075EDE4-6C85-4711-8685-68FBE359D4C4}
// *********************************************************************//
interface ksTAN : public TDispWrapper<IDispatch>
{
  double __fastcall get_x1(long index)
  {
    _TDispID _dispid(/* x1 */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_y1(long index)
  {
    _TDispID _dispid(/* y1 */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_x2(long index)
  {
    _TDispID _dispid(/* x2 */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_y2(long index)
  {
    _TDispID _dispid(/* y2 */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksCON
// Flags:     (4096) Dispatchable
// GUID:      {C175BFB8-D7D6-4325-BFDA-2A282B9D1119}
// *********************************************************************//
interface ksCON : public TDispWrapper<IDispatch>
{
  long __fastcall GetCount()
  {
    _TDispID _dispid(/* GetCount */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetXc(long index)
  {
    _TDispID _dispid(/* GetXc */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetYc(long index)
  {
    _TDispID _dispid(/* GetYc */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetX1(long index)
  {
    _TDispID _dispid(/* GetX1 */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetY1(long index)
  {
    _TDispID _dispid(/* GetY1 */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetX2(long index)
  {
    _TDispID _dispid(/* GetX2 */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetY2(long index)
  {
    _TDispID _dispid(/* GetY2 */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksInertiaParam
// Flags:     (4096) Dispatchable
// GUID:      {EA92E649-239E-4105-BBD3-AEF4817BD783}
// *********************************************************************//
interface ksInertiaParam : public TDispWrapper<IDispatch>
{
  double __fastcall get_xc()
  {
    _TDispID _dispid(/* xc */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_yc()
  {
    _TDispID _dispid(/* yc */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_F()
  {
    _TDispID _dispid(/* F */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_ly()
  {
    _TDispID _dispid(/* ly */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_lx()
  {
    _TDispID _dispid(/* lx */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_lxy()
  {
    _TDispID _dispid(/* lxy */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_mx()
  {
    _TDispID _dispid(/* mx */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_my()
  {
    _TDispID _dispid(/* my */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_mxy()
  {
    _TDispID _dispid(/* mxy */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_jx()
  {
    _TDispID _dispid(/* jx */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_jy()
  {
    _TDispID _dispid(/* jy */ DISPID(11));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_A()
  {
    _TDispID _dispid(/* A */ DISPID(12));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          xc = {read = get_xc};
  __property   double          yc = {read = get_yc};
  __property   double          F = {read = get_F};
  __property   double          ly = {read = get_ly};
  __property   double          lx = {read = get_lx};
  __property   double          lxy = {read = get_lxy};
  __property   double          mx = {read = get_mx};
  __property   double          my = {read = get_my};
  __property   double          mxy = {read = get_mxy};
  __property   double          jx = {read = get_jx};
  __property   double          jy = {read = get_jy};
  __property   double          A = {read = get_A};
};
// *********************************************************************//
// Interface: ksMassInertiaParam
// Flags:     (4096) Dispatchable
// GUID:      {283F77EB-7E2C-4F71-8B16-4D286FA4857E}
// *********************************************************************//
interface ksMassInertiaParam : public TDispWrapper<IDispatch>
{
  double __fastcall get_xc()
  {
    _TDispID _dispid(/* xc */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_yc()
  {
    _TDispID _dispid(/* yc */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_zc()
  {
    _TDispID _dispid(/* zc */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_lx()
  {
    _TDispID _dispid(/* lx */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_ly()
  {
    _TDispID _dispid(/* ly */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_lz()
  {
    _TDispID _dispid(/* lz */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_jx()
  {
    _TDispID _dispid(/* jx */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_jy()
  {
    _TDispID _dispid(/* jy */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_jz()
  {
    _TDispID _dispid(/* jz */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_jxy()
  {
    _TDispID _dispid(/* jxy */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_jxz()
  {
    _TDispID _dispid(/* jxz */ DISPID(11));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_jyz()
  {
    _TDispID _dispid(/* jyz */ DISPID(12));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_jx0z()
  {
    _TDispID _dispid(/* jx0z */ DISPID(13));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_jy0z()
  {
    _TDispID _dispid(/* jy0z */ DISPID(14));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_jx0y()
  {
    _TDispID _dispid(/* jx0y */ DISPID(15));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_lxy()
  {
    _TDispID _dispid(/* lxy */ DISPID(16));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_lxz()
  {
    _TDispID _dispid(/* lxz */ DISPID(17));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_lyz()
  {
    _TDispID _dispid(/* lyz */ DISPID(18));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_r()
  {
    _TDispID _dispid(/* r */ DISPID(19));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_m()
  {
    _TDispID _dispid(/* m */ DISPID(20));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_v()
  {
    _TDispID _dispid(/* v */ DISPID(21));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetBitVectorValue(long val, TOLEBOOL setState)
  {
    _TDispID _dispid(/* SetBitVectorValue */ DISPID(22));
    TAutoArgs<2> _args;
    _args[1] = val /*[VT_I4:0]*/;
    _args[2] = setState /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_F()
  {
    _TDispID _dispid(/* F */ DISPID(23));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_jx0()
  {
    _TDispID _dispid(/* jx0 */ DISPID(24));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_jy0()
  {
    _TDispID _dispid(/* jy0 */ DISPID(25));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_jz0()
  {
    _TDispID _dispid(/* jz0 */ DISPID(26));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetAxisX(double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetAxisX */ DISPID(27));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    _args[3] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetAxisY(double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetAxisY */ DISPID(28));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    _args[3] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetAxisZ(double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetAxisZ */ DISPID(29));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    _args[3] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          xc = {read = get_xc};
  __property   double          yc = {read = get_yc};
  __property   double          zc = {read = get_zc};
  __property   double          lx = {read = get_lx};
  __property   double          ly = {read = get_ly};
  __property   double          lz = {read = get_lz};
  __property   double          jx = {read = get_jx};
  __property   double          jy = {read = get_jy};
  __property   double          jz = {read = get_jz};
  __property   double          jxy = {read = get_jxy};
  __property   double          jxz = {read = get_jxz};
  __property   double          jyz = {read = get_jyz};
  __property   double          jx0z = {read = get_jx0z};
  __property   double          jy0z = {read = get_jy0z};
  __property   double          jx0y = {read = get_jx0y};
  __property   double          lxy = {read = get_lxy};
  __property   double          lxz = {read = get_lxz};
  __property   double          lyz = {read = get_lyz};
  __property   double          r = {read = get_r};
  __property   double          m = {read = get_m};
  __property   double          v = {read = get_v};
  __property   double          F = {read = get_F};
  __property   double          jx0 = {read = get_jx0};
  __property   double          jy0 = {read = get_jy0};
  __property   double          jz0 = {read = get_jz0};
};
// *********************************************************************//
// Interface: ksMathematic2D
// Flags:     (4096) Dispatchable
// GUID:      {F2D5AE01-45DE-4496-B01B-9958CAEF5943}
// *********************************************************************//
interface ksMathematic2D : public TDispWrapper<IDispatch>
{
  double __fastcall ksCosD(double x)
  {
    _TDispID _dispid(/* ksCosD */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = x /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksSinD(double x)
  {
    _TDispID _dispid(/* ksSinD */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = x /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksTanD(double x)
  {
    _TDispID _dispid(/* ksTanD */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = x /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksAtanD(double x)
  {
    _TDispID _dispid(/* ksAtanD */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = x /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksAngle(double x1, double y1, double x2, double y2)
  {
    _TDispID _dispid(/* ksAngle */ DISPID(5));
    TAutoArgs<4> _args;
    _args[1] = x1 /*[VT_R8:0]*/;
    _args[2] = y1 /*[VT_R8:0]*/;
    _args[3] = x2 /*[VT_R8:0]*/;
    _args[4] = y2 /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksEqualPoints(double x1, double y1, double x2, double y2)
  {
    _TDispID _dispid(/* ksEqualPoints */ DISPID(6));
    TAutoArgs<4> _args;
    _args[1] = x1 /*[VT_R8:0]*/;
    _args[2] = y1 /*[VT_R8:0]*/;
    _args[3] = x2 /*[VT_R8:0]*/;
    _args[4] = y2 /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksIntersectLinSLinS(double x11, double y11, double x12, double y12, double x21
                                          , double y21, double x22, double y22, LPDISPATCH param)
  {
    _TDispID _dispid(/* ksIntersectLinSLinS */ DISPID(7));
    TAutoArgs<9> _args;
    _args[1] = x11 /*[VT_R8:0]*/;
    _args[2] = y11 /*[VT_R8:0]*/;
    _args[3] = x12 /*[VT_R8:0]*/;
    _args[4] = y12 /*[VT_R8:0]*/;
    _args[5] = x21 /*[VT_R8:0]*/;
    _args[6] = y21 /*[VT_R8:0]*/;
    _args[7] = x22 /*[VT_R8:0]*/;
    _args[8] = y22 /*[VT_R8:0]*/;
    _args[9] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksIntersectLinSLine(double x1, double y1, double x2, double y2, double x, 
                                          double y, double ang, LPDISPATCH param)
  {
    _TDispID _dispid(/* ksIntersectLinSLine */ DISPID(8));
    TAutoArgs<8> _args;
    _args[1] = x1 /*[VT_R8:0]*/;
    _args[2] = y1 /*[VT_R8:0]*/;
    _args[3] = x2 /*[VT_R8:0]*/;
    _args[4] = y2 /*[VT_R8:0]*/;
    _args[5] = x /*[VT_R8:0]*/;
    _args[6] = y /*[VT_R8:0]*/;
    _args[7] = ang /*[VT_R8:0]*/;
    _args[8] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksIntersectArcLin(double xc, double yc, double rad, double f1, double f2, 
                                        long n, double x, double y, double ang, LPDISPATCH param)
  {
    _TDispID _dispid(/* ksIntersectArcLin */ DISPID(9));
    TAutoArgs<10> _args;
    _args[1] = xc /*[VT_R8:0]*/;
    _args[2] = yc /*[VT_R8:0]*/;
    _args[3] = rad /*[VT_R8:0]*/;
    _args[4] = f1 /*[VT_R8:0]*/;
    _args[5] = f2 /*[VT_R8:0]*/;
    _args[6] = n /*[VT_I4:0]*/;
    _args[7] = x /*[VT_R8:0]*/;
    _args[8] = y /*[VT_R8:0]*/;
    _args[9] = ang /*[VT_R8:0]*/;
    _args[10] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksIntersectLinLin(double x1, double y1, double angle1, double x2, double y2, 
                                        double angle2, LPDISPATCH param)
  {
    _TDispID _dispid(/* ksIntersectLinLin */ DISPID(10));
    TAutoArgs<7> _args;
    _args[1] = x1 /*[VT_R8:0]*/;
    _args[2] = y1 /*[VT_R8:0]*/;
    _args[3] = angle1 /*[VT_R8:0]*/;
    _args[4] = x2 /*[VT_R8:0]*/;
    _args[5] = y2 /*[VT_R8:0]*/;
    _args[6] = angle2 /*[VT_R8:0]*/;
    _args[7] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksIntersectCirCir(double xc1, double yc1, double radius1, double xc2, 
                                        double yc2, double radius2, LPDISPATCH param)
  {
    _TDispID _dispid(/* ksIntersectCirCir */ DISPID(11));
    TAutoArgs<7> _args;
    _args[1] = xc1 /*[VT_R8:0]*/;
    _args[2] = yc1 /*[VT_R8:0]*/;
    _args[3] = radius1 /*[VT_R8:0]*/;
    _args[4] = xc2 /*[VT_R8:0]*/;
    _args[5] = yc2 /*[VT_R8:0]*/;
    _args[6] = radius2 /*[VT_R8:0]*/;
    _args[7] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksIntersectArcArc(double xac, double yac, double rada, double fa1, double fa2
                                        , short directa, double xbc, double ybc, double radb, 
                                        double fb1, double fb2, long directb, LPDISPATCH param)
  {
    _TDispID _dispid(/* ksIntersectArcArc */ DISPID(12));
    TAutoArgs<13> _args;
    _args[1] = xac /*[VT_R8:0]*/;
    _args[2] = yac /*[VT_R8:0]*/;
    _args[3] = rada /*[VT_R8:0]*/;
    _args[4] = fa1 /*[VT_R8:0]*/;
    _args[5] = fa2 /*[VT_R8:0]*/;
    _args[6] = directa /*[VT_I2:0]*/;
    _args[7] = xbc /*[VT_R8:0]*/;
    _args[8] = ybc /*[VT_R8:0]*/;
    _args[9] = radb /*[VT_R8:0]*/;
    _args[10] = fb1 /*[VT_R8:0]*/;
    _args[11] = fb2 /*[VT_R8:0]*/;
    _args[12] = directb /*[VT_I4:0]*/;
    _args[13] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksIntersectLinSArc(double x1, double y1, double x2, double y2, double xc, 
                                         double yc, double rad, double f1, double f2, short direct, 
                                         LPDISPATCH param)
  {
    _TDispID _dispid(/* ksIntersectLinSArc */ DISPID(13));
    TAutoArgs<11> _args;
    _args[1] = x1 /*[VT_R8:0]*/;
    _args[2] = y1 /*[VT_R8:0]*/;
    _args[3] = x2 /*[VT_R8:0]*/;
    _args[4] = y2 /*[VT_R8:0]*/;
    _args[5] = xc /*[VT_R8:0]*/;
    _args[6] = yc /*[VT_R8:0]*/;
    _args[7] = rad /*[VT_R8:0]*/;
    _args[8] = f1 /*[VT_R8:0]*/;
    _args[9] = f2 /*[VT_R8:0]*/;
    _args[10] = direct /*[VT_I2:0]*/;
    _args[11] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksIntersectLinSCir(double x1, double y1, double x2, double y2, double xc, 
                                         double yc, double rad, LPDISPATCH param)
  {
    _TDispID _dispid(/* ksIntersectLinSCir */ DISPID(14));
    TAutoArgs<8> _args;
    _args[1] = x1 /*[VT_R8:0]*/;
    _args[2] = y1 /*[VT_R8:0]*/;
    _args[3] = x2 /*[VT_R8:0]*/;
    _args[4] = y2 /*[VT_R8:0]*/;
    _args[5] = xc /*[VT_R8:0]*/;
    _args[6] = yc /*[VT_R8:0]*/;
    _args[7] = rad /*[VT_R8:0]*/;
    _args[8] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksIntersectCirLin(double xc, double yc, double rad, double xl, double yl, 
                                        double angle, LPDISPATCH param)
  {
    _TDispID _dispid(/* ksIntersectCirLin */ DISPID(15));
    TAutoArgs<7> _args;
    _args[1] = xc /*[VT_R8:0]*/;
    _args[2] = yc /*[VT_R8:0]*/;
    _args[3] = rad /*[VT_R8:0]*/;
    _args[4] = xl /*[VT_R8:0]*/;
    _args[5] = yl /*[VT_R8:0]*/;
    _args[6] = angle /*[VT_R8:0]*/;
    _args[7] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksIntersectCirArc(double xcc, double ycc, double radc, double xac, double yac
                                        , double rada, double fa1, double fa2, short directa, 
                                        LPDISPATCH param)
  {
    _TDispID _dispid(/* ksIntersectCirArc */ DISPID(16));
    TAutoArgs<10> _args;
    _args[1] = xcc /*[VT_R8:0]*/;
    _args[2] = ycc /*[VT_R8:0]*/;
    _args[3] = radc /*[VT_R8:0]*/;
    _args[4] = xac /*[VT_R8:0]*/;
    _args[5] = yac /*[VT_R8:0]*/;
    _args[6] = rada /*[VT_R8:0]*/;
    _args[7] = fa1 /*[VT_R8:0]*/;
    _args[8] = fa2 /*[VT_R8:0]*/;
    _args[9] = directa /*[VT_I2:0]*/;
    _args[10] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksIntersectCurvCurv(long p1, long p2, LPDISPATCH param)
  {
    _TDispID _dispid(/* ksIntersectCurvCurv */ DISPID(17));
    TAutoArgs<3> _args;
    _args[1] = p1 /*[VT_I4:0]*/;
    _args[2] = p2 /*[VT_I4:0]*/;
    _args[3] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksTanLinePointCircle(double x, double y, double xc, double yc, double rad, 
                                           LPDISPATCH param)
  {
    _TDispID _dispid(/* ksTanLinePointCircle */ DISPID(18));
    TAutoArgs<6> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = xc /*[VT_R8:0]*/;
    _args[4] = yc /*[VT_R8:0]*/;
    _args[5] = rad /*[VT_R8:0]*/;
    _args[6] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksTanLineAngCircle(double xc, double yc, double rad, double ang, 
                                         LPDISPATCH param)
  {
    _TDispID _dispid(/* ksTanLineAngCircle */ DISPID(19));
    TAutoArgs<5> _args;
    _args[1] = xc /*[VT_R8:0]*/;
    _args[2] = yc /*[VT_R8:0]*/;
    _args[3] = rad /*[VT_R8:0]*/;
    _args[4] = ang /*[VT_R8:0]*/;
    _args[5] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksTanCircleCircle(double xc1, double yc1, double radius1, double xc2, 
                                        double yc2, double radius2, LPDISPATCH param)
  {
    _TDispID _dispid(/* ksTanCircleCircle */ DISPID(20));
    TAutoArgs<7> _args;
    _args[1] = xc1 /*[VT_R8:0]*/;
    _args[2] = yc1 /*[VT_R8:0]*/;
    _args[3] = radius1 /*[VT_R8:0]*/;
    _args[4] = xc2 /*[VT_R8:0]*/;
    _args[5] = yc2 /*[VT_R8:0]*/;
    _args[6] = radius2 /*[VT_R8:0]*/;
    _args[7] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksTanLinePointCurve(double x, double y, long pCur, LPDISPATCH array)
  {
    _TDispID _dispid(/* ksTanLinePointCurve */ DISPID(21));
    TAutoArgs<4> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = pCur /*[VT_I4:0]*/;
    _args[4] = array /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksCouplingLineLine(double x1, double y1, double angle1, double x2, double y2, 
                                         double angle2, double rad, LPDISPATCH param)
  {
    _TDispID _dispid(/* ksCouplingLineLine */ DISPID(22));
    TAutoArgs<8> _args;
    _args[1] = x1 /*[VT_R8:0]*/;
    _args[2] = y1 /*[VT_R8:0]*/;
    _args[3] = angle1 /*[VT_R8:0]*/;
    _args[4] = x2 /*[VT_R8:0]*/;
    _args[5] = y2 /*[VT_R8:0]*/;
    _args[6] = angle2 /*[VT_R8:0]*/;
    _args[7] = rad /*[VT_R8:0]*/;
    _args[8] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksCouplingLineCircle(double xc, double yc, double radc, double x1, double y1, 
                                           double angle1, double rad, LPDISPATCH param)
  {
    _TDispID _dispid(/* ksCouplingLineCircle */ DISPID(23));
    TAutoArgs<8> _args;
    _args[1] = xc /*[VT_R8:0]*/;
    _args[2] = yc /*[VT_R8:0]*/;
    _args[3] = radc /*[VT_R8:0]*/;
    _args[4] = x1 /*[VT_R8:0]*/;
    _args[5] = y1 /*[VT_R8:0]*/;
    _args[6] = angle1 /*[VT_R8:0]*/;
    _args[7] = rad /*[VT_R8:0]*/;
    _args[8] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksCouplingCircleCircle(double xc1, double yc1, double radc1, double xc2, 
                                             double yc2, double radc2, double rad, LPDISPATCH param)
  {
    _TDispID _dispid(/* ksCouplingCircleCircle */ DISPID(24));
    TAutoArgs<8> _args;
    _args[1] = xc1 /*[VT_R8:0]*/;
    _args[2] = yc1 /*[VT_R8:0]*/;
    _args[3] = radc1 /*[VT_R8:0]*/;
    _args[4] = xc2 /*[VT_R8:0]*/;
    _args[5] = yc2 /*[VT_R8:0]*/;
    _args[6] = radc2 /*[VT_R8:0]*/;
    _args[7] = rad /*[VT_R8:0]*/;
    _args[8] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksSymmetry(double x, double y, double x1, double y1, double x2, double y2, 
                                 double* xc, double* yc)
  {
    _TDispID _dispid(/* ksSymmetry */ DISPID(25));
    TAutoArgs<8> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = x1 /*[VT_R8:0]*/;
    _args[4] = y1 /*[VT_R8:0]*/;
    _args[5] = x2 /*[VT_R8:0]*/;
    _args[6] = y2 /*[VT_R8:0]*/;
    _args[7] = xc /*[VT_R8:1]*/;
    _args[8] = yc /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksRotate(double x, double y, double xc, double yc, double ang, double* xr, 
                               double* yr)
  {
    _TDispID _dispid(/* ksRotate */ DISPID(26));
    TAutoArgs<7> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = xc /*[VT_R8:0]*/;
    _args[4] = yc /*[VT_R8:0]*/;
    _args[5] = ang /*[VT_R8:0]*/;
    _args[6] = xr /*[VT_R8:1]*/;
    _args[7] = yr /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksDistancePntPnt(double x1, double y1, double x2, double y2)
  {
    _TDispID _dispid(/* ksDistancePntPnt */ DISPID(27));
    TAutoArgs<4> _args;
    _args[1] = x1 /*[VT_R8:0]*/;
    _args[2] = y1 /*[VT_R8:0]*/;
    _args[3] = x2 /*[VT_R8:0]*/;
    _args[4] = y2 /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksDistancePntLineSeg(double x, double y, double x1, double y1, double x2, 
                                         double y2)
  {
    _TDispID _dispid(/* ksDistancePntLineSeg */ DISPID(28));
    TAutoArgs<6> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = x1 /*[VT_R8:0]*/;
    _args[4] = y1 /*[VT_R8:0]*/;
    _args[5] = x2 /*[VT_R8:0]*/;
    _args[6] = y2 /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksDistancePntArc(double x, double y, double xac, double yac, double rada, 
                                     double fa1, double fa2, short directa)
  {
    _TDispID _dispid(/* ksDistancePntArc */ DISPID(29));
    TAutoArgs<8> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = xac /*[VT_R8:0]*/;
    _args[4] = yac /*[VT_R8:0]*/;
    _args[5] = rada /*[VT_R8:0]*/;
    _args[6] = fa1 /*[VT_R8:0]*/;
    _args[7] = fa2 /*[VT_R8:0]*/;
    _args[8] = directa /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksDistancePntCircle(double x, double y, double xc, double yc, double rad)
  {
    _TDispID _dispid(/* ksDistancePntCircle */ DISPID(30));
    TAutoArgs<5> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = xc /*[VT_R8:0]*/;
    _args[4] = yc /*[VT_R8:0]*/;
    _args[5] = rad /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksDistancePntLine(double x, double y, double x1, double y1, double angle)
  {
    _TDispID _dispid(/* ksDistancePntLine */ DISPID(31));
    TAutoArgs<5> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = x1 /*[VT_R8:0]*/;
    _args[4] = y1 /*[VT_R8:0]*/;
    _args[5] = angle /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksDistancePntLineForPoint(double x, double y, double x1, double y1, double x2, 
                                              double y2)
  {
    _TDispID _dispid(/* ksDistancePntLineForPoint */ DISPID(32));
    TAutoArgs<6> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = x1 /*[VT_R8:0]*/;
    _args[4] = y1 /*[VT_R8:0]*/;
    _args[5] = x2 /*[VT_R8:0]*/;
    _args[6] = y2 /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksPerpendicular(double x, double y, double x1, double y1, double x2, double y2
                                      , double* xp, double* yp)
  {
    _TDispID _dispid(/* ksPerpendicular */ DISPID(33));
    TAutoArgs<8> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = x1 /*[VT_R8:0]*/;
    _args[4] = y1 /*[VT_R8:0]*/;
    _args[5] = x2 /*[VT_R8:0]*/;
    _args[6] = y2 /*[VT_R8:0]*/;
    _args[7] = xp /*[VT_R8:1]*/;
    _args[8] = yp /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ksPointsOnCurve(long curve, long count)
  {
    _TDispID _dispid(/* ksPointsOnCurve */ DISPID(34));
    TAutoArgs<2> _args;
    _args[1] = curve /*[VT_I4:0]*/;
    _args[2] = count /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksGetCurvePerpendicular(long curve, double x, double y)
  {
    _TDispID _dispid(/* ksGetCurvePerpendicular */ DISPID(35));
    TAutoArgs<3> _args;
    _args[1] = curve /*[VT_I4:0]*/;
    _args[2] = x /*[VT_R8:0]*/;
    _args[3] = y /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetCurvePointProjection(long curve, double x, double y, double* kx, double* ky)
  {
    _TDispID _dispid(/* ksGetCurvePointProjection */ DISPID(36));
    TAutoArgs<5> _args;
    _args[1] = curve /*[VT_I4:0]*/;
    _args[2] = x /*[VT_R8:0]*/;
    _args[3] = y /*[VT_R8:0]*/;
    _args[4] = kx /*[VT_R8:1]*/;
    _args[5] = ky /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksMovePointOnCurve(long curve, double* x, double* y, double len, long dir)
  {
    _TDispID _dispid(/* ksMovePointOnCurve */ DISPID(37));
    TAutoArgs<5> _args;
    _args[1] = curve /*[VT_I4:0]*/;
    _args[2] = x /*[VT_R8:1]*/;
    _args[3] = y /*[VT_R8:1]*/;
    _args[4] = len /*[VT_R8:0]*/;
    _args[5] = dir /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCalcInertiaProperties(long p, LPDISPATCH prop, short dimension)
  {
    _TDispID _dispid(/* ksCalcInertiaProperties */ DISPID(38));
    TAutoArgs<3> _args;
    _args[1] = p /*[VT_I4:0]*/;
    _args[2] = prop /*[VT_DISPATCH:0]*/;
    _args[3] = dimension /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCalcMassInertiaProperties(long p, LPDISPATCH prop, double density, double param)
  {
    _TDispID _dispid(/* ksCalcMassInertiaProperties */ DISPID(39));
    TAutoArgs<4> _args;
    _args[1] = p /*[VT_I4:0]*/;
    _args[2] = prop /*[VT_DISPATCH:0]*/;
    _args[3] = density /*[VT_R8:0]*/;
    _args[4] = param /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksGetCurvePerimeter(long curve, short dimension)
  {
    _TDispID _dispid(/* ksGetCurvePerimeter */ DISPID(40));
    TAutoArgs<2> _args;
    _args[1] = curve /*[VT_I4:0]*/;
    _args[2] = dimension /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ksPointsOnCurveByStep(long curve, double step)
  {
    _TDispID _dispid(/* ksPointsOnCurveByStep */ DISPID(41));
    TAutoArgs<2> _args;
    _args[1] = curve /*[VT_I4:0]*/;
    _args[2] = step /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksDistancePntPntOnCurve(long curve, double x1, double y1, double x2, double y2)
  {
    _TDispID _dispid(/* ksDistancePntPntOnCurve */ DISPID(42));
    TAutoArgs<5> _args;
    _args[1] = curve /*[VT_I4:0]*/;
    _args[2] = x1 /*[VT_R8:0]*/;
    _args[3] = y1 /*[VT_R8:0]*/;
    _args[4] = x2 /*[VT_R8:0]*/;
    _args[5] = y2 /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetCurvePointProjectionEx(long curve, double x, double y, double* kx, double* ky
                                              , double* t)
  {
    _TDispID _dispid(/* ksGetCurvePointProjectionEx */ DISPID(43));
    TAutoArgs<6> _args;
    _args[1] = curve /*[VT_I4:0]*/;
    _args[2] = x /*[VT_R8:0]*/;
    _args[3] = y /*[VT_R8:0]*/;
    _args[4] = kx /*[VT_R8:1]*/;
    _args[5] = ky /*[VT_R8:1]*/;
    _args[6] = t /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetCurvePoint(long curve, double t, double* x, double* y)
  {
    _TDispID _dispid(/* ksGetCurvePoint */ DISPID(44));
    TAutoArgs<4> _args;
    _args[1] = curve /*[VT_I4:0]*/;
    _args[2] = t /*[VT_R8:0]*/;
    _args[3] = x /*[VT_R8:1]*/;
    _args[4] = y /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetCurveMinMaxParametr(long curve, double* tMin, double* tMax)
  {
    _TDispID _dispid(/* ksGetCurveMinMaxParametr */ DISPID(45));
    TAutoArgs<3> _args;
    _args[1] = curve /*[VT_I4:0]*/;
    _args[2] = tMin /*[VT_R8:1]*/;
    _args[3] = tMax /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksDistanceT1T2OnCurve(long curve, double t1, double t2)
  {
    _TDispID _dispid(/* ksDistanceT1T2OnCurve */ DISPID(46));
    TAutoArgs<3> _args;
    _args[1] = curve /*[VT_I4:0]*/;
    _args[2] = t1 /*[VT_R8:0]*/;
    _args[3] = t2 /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksTanCurvCurv(long p1, long p2, LPDISPATCH pointArr1, LPDISPATCH pointArr2)
  {
    _TDispID _dispid(/* ksTanCurvCurv */ DISPID(47));
    TAutoArgs<4> _args;
    _args[1] = p1 /*[VT_I4:0]*/;
    _args[2] = p2 /*[VT_I4:0]*/;
    _args[3] = pointArr1 /*[VT_DISPATCH:0]*/;
    _args[4] = pointArr2 /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksDynamicArray
// Flags:     (4096) Dispatchable
// GUID:      {4D91CD9A-6E02-409D-9360-CF7FEF60D31C}
// *********************************************************************//
interface ksDynamicArray : public TDispWrapper<IDispatch>
{
  void __fastcall set_reference(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* reference */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_reference()
  {
    _TDispID _dispid(/* reference */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDeleteArray()
  {
    _TDispID _dispid(/* ksDeleteArray */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksClearArray()
  {
    _TDispID _dispid(/* ksClearArray */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetArrayCount()
  {
    _TDispID _dispid(/* ksGetArrayCount */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetArrayType()
  {
    _TDispID _dispid(/* ksGetArrayType */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksExcludeArrayItem(long index)
  {
    _TDispID _dispid(/* ksExcludeArrayItem */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksAddArrayItem(long index, LPDISPATCH item)
  {
    _TDispID _dispid(/* ksAddArrayItem */ DISPID(7));
    TAutoArgs<2> _args;
    _args[1] = index /*[VT_I4:0]*/;
    _args[2] = item /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetArrayItem(long index, LPDISPATCH item)
  {
    _TDispID _dispid(/* ksGetArrayItem */ DISPID(8));
    TAutoArgs<2> _args;
    _args[1] = index /*[VT_I4:0]*/;
    _args[2] = item /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetArrayItem(long index, LPDISPATCH item)
  {
    _TDispID _dispid(/* ksSetArrayItem */ DISPID(9));
    TAutoArgs<2> _args;
    _args[1] = index /*[VT_I4:0]*/;
    _args[2] = item /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            reference = {read = get_reference, write = set_reference};
};
// *********************************************************************//
// Interface: ksRDimDrawingParam
// Flags:     (4096) Dispatchable
// GUID:      {2A4D4542-95B3-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksRDimDrawingParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_pt1(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* pt1 */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_pt1()
  {
    _TDispID _dispid(/* pt1 */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_pt2(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* pt2 */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_pt2()
  {
    _TDispID _dispid(/* pt2 */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_textPos(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* textPos */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_textPos()
  {
    _TDispID _dispid(/* textPos */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ang(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* ang */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_ang()
  {
    _TDispID _dispid(/* ang */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_shelfDir(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* shelfDir */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_shelfDir()
  {
    _TDispID _dispid(/* shelfDir */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           pt1 = {read = get_pt1, write = set_pt1};
  __property   short           pt2 = {read = get_pt2, write = set_pt2};
  __property   long            textPos = {read = get_textPos, write = set_textPos};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   long            shelfDir = {read = get_shelfDir, write = set_shelfDir};
};
// *********************************************************************//
// Interface: ksRDimSourceParam
// Flags:     (4096) Dispatchable
// GUID:      {2A4D4545-95B3-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksRDimSourceParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_xc(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* xc */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_xc()
  {
    _TDispID _dispid(/* xc */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_yc(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* yc */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_yc()
  {
    _TDispID _dispid(/* yc */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_rad(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* rad */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_rad()
  {
    _TDispID _dispid(/* rad */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          xc = {read = get_xc, write = set_xc};
  __property   double          yc = {read = get_yc, write = set_yc};
  __property   double          rad = {read = get_rad, write = set_rad};
};
// *********************************************************************//
// Interface: ksRDimParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F81-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksRDimParam : public TDispWrapper<IDispatch>
{
  LPDISPATCH __fastcall GetTPar()
  {
    _TDispID _dispid(/* GetTPar */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetTPar(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetTPar */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetDPar()
  {
    _TDispID _dispid(/* GetDPar */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetDPar(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetDPar */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSPar()
  {
    _TDispID _dispid(/* GetSPar */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSPar(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetSPar */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksLineSegParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F84-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksLineSegParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_x1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x1 */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x1()
  {
    _TDispID _dispid(/* x1 */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y1 */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y1()
  {
    _TDispID _dispid(/* y1 */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x2 */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x2()
  {
    _TDispID _dispid(/* x2 */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y2 */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y2()
  {
    _TDispID _dispid(/* y2 */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          x1 = {read = get_x1, write = set_x1};
  __property   double          y1 = {read = get_y1, write = set_y1};
  __property   double          x2 = {read = get_x2, write = set_x2};
  __property   double          y2 = {read = get_y2, write = set_y2};
  __property   long            style = {read = get_style, write = set_style};
};
// *********************************************************************//
// Interface: ksCircleParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F87-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksCircleParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_xc(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* xc */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_xc()
  {
    _TDispID _dispid(/* xc */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_yc(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* yc */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_yc()
  {
    _TDispID _dispid(/* yc */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_rad(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* rad */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_rad()
  {
    _TDispID _dispid(/* rad */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          xc = {read = get_xc, write = set_xc};
  __property   double          yc = {read = get_yc, write = set_yc};
  __property   double          rad = {read = get_rad, write = set_rad};
  __property   long            style = {read = get_style, write = set_style};
};
// *********************************************************************//
// Interface: ksArcByAngleParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F8A-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksArcByAngleParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_xc(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* xc */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_xc()
  {
    _TDispID _dispid(/* xc */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_yc(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* yc */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_yc()
  {
    _TDispID _dispid(/* yc */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_rad(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* rad */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_rad()
  {
    _TDispID _dispid(/* rad */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ang1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* ang1 */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_ang1()
  {
    _TDispID _dispid(/* ang1 */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ang2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* ang2 */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_ang2()
  {
    _TDispID _dispid(/* ang2 */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_dir(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* dir */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_dir()
  {
    _TDispID _dispid(/* dir */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          xc = {read = get_xc, write = set_xc};
  __property   double          yc = {read = get_yc, write = set_yc};
  __property   double          rad = {read = get_rad, write = set_rad};
  __property   double          ang1 = {read = get_ang1, write = set_ang1};
  __property   double          ang2 = {read = get_ang2, write = set_ang2};
  __property   short           dir = {read = get_dir, write = set_dir};
  __property   long            style = {read = get_style, write = set_style};
};
// *********************************************************************//
// Interface: ksArcByPointParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F8D-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksArcByPointParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_xc(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* xc */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_xc()
  {
    _TDispID _dispid(/* xc */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_yc(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* yc */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_yc()
  {
    _TDispID _dispid(/* yc */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_rad(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* rad */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_rad()
  {
    _TDispID _dispid(/* rad */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x1 */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x1()
  {
    _TDispID _dispid(/* x1 */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y1 */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y1()
  {
    _TDispID _dispid(/* y1 */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x2 */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x2()
  {
    _TDispID _dispid(/* x2 */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y2 */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y2()
  {
    _TDispID _dispid(/* y2 */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_dir(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* dir */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_dir()
  {
    _TDispID _dispid(/* dir */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          xc = {read = get_xc, write = set_xc};
  __property   double          yc = {read = get_yc, write = set_yc};
  __property   double          rad = {read = get_rad, write = set_rad};
  __property   double          x1 = {read = get_x1, write = set_x1};
  __property   double          y1 = {read = get_y1, write = set_y1};
  __property   double          x2 = {read = get_x2, write = set_x2};
  __property   double          y2 = {read = get_y2, write = set_y2};
  __property   short           dir = {read = get_dir, write = set_dir};
  __property   long            style = {read = get_style, write = set_style};
};
// *********************************************************************//
// Interface: ksPointParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F90-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksPointParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_x(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x()
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y()
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   long            style = {read = get_style, write = set_style};
};
// *********************************************************************//
// Interface: ksHatchParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F93-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksHatchParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_x(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x()
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y()
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_step(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* step */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_step()
  {
    _TDispID _dispid(/* step */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ang(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* ang */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_ang()
  {
    _TDispID _dispid(/* ang */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_width(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* width */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_width()
  {
    _TDispID _dispid(/* width */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_boundaries(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* boundaries */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_boundaries()
  {
    _TDispID _dispid(/* boundaries */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_color(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* color */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_color()
  {
    _TDispID _dispid(/* color */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_sheeting(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* sheeting */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_sheeting()
  {
    _TDispID _dispid(/* sheeting */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   double          step = {read = get_step, write = set_step};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   double          width = {read = get_width, write = set_width};
  __property   long            boundaries = {read = get_boundaries, write = set_boundaries};
  __property   long            color = {read = get_color, write = set_color};
  __property   short           sheeting = {read = get_sheeting, write = set_sheeting};
  __property   long            style = {read = get_style, write = set_style};
};
// *********************************************************************//
// Interface: ksTextParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F96-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksTextParam : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetParagraphParam()
  {
    _TDispID _dispid(/* GetParagraphParam */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetParagraphParam(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetParagraphParam */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetTextLineArr()
  {
    _TDispID _dispid(/* GetTextLineArr */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetTextLineArr(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetTextLineArr */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksNurbsPointParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F99-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksNurbsPointParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_x(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x()
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y()
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_weight(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* weight */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_weight()
  {
    _TDispID _dispid(/* weight */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   double          weight = {read = get_weight, write = set_weight};
};
// *********************************************************************//
// Interface: ksDoubleValue
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F9C-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksDoubleValue : public TDispWrapper<IDispatch>
{
  void __fastcall set_value(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* value */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_value()
  {
    _TDispID _dispid(/* value */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          value = {read = get_value, write = set_value};
};
// *********************************************************************//
// Interface: ksNurbsParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F9F-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksNurbsParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_degree(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* degree */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_degree()
  {
    _TDispID _dispid(/* degree */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_close(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* close */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_close()
  {
    _TDispID _dispid(/* close */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall get_periodic()
  {
    _TDispID _dispid(/* periodic */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPPoint()
  {
    _TDispID _dispid(/* GetPPoint */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPPoint(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetPPoint */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPKnot()
  {
    _TDispID _dispid(/* GetPKnot */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPKnot(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetPKnot */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           degree = {read = get_degree, write = set_degree};
  __property   TOLEBOOL        close = {read = get_close, write = set_close};
  __property   long            style = {read = get_style, write = set_style};
  __property   TOLEBOOL        periodic = {read = get_periodic};
};
// *********************************************************************//
// Interface: ksConicArcParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FA2-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksConicArcParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_A(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* A */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_A()
  {
    _TDispID _dispid(/* A */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_B(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* B */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_B()
  {
    _TDispID _dispid(/* B */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_C(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* C */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_C()
  {
    _TDispID _dispid(/* C */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_D(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* D */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_D()
  {
    _TDispID _dispid(/* D */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_E(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* E */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_E()
  {
    _TDispID _dispid(/* E */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_F(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* F */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_F()
  {
    _TDispID _dispid(/* F */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x1 */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x1()
  {
    _TDispID _dispid(/* x1 */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y1 */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y1()
  {
    _TDispID _dispid(/* y1 */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x2 */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x2()
  {
    _TDispID _dispid(/* x2 */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y2 */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y2()
  {
    _TDispID _dispid(/* y2 */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(11));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(12));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          A = {read = get_A, write = set_A};
  __property   double          B = {read = get_B, write = set_B};
  __property   double          C = {read = get_C, write = set_C};
  __property   double          D = {read = get_D, write = set_D};
  __property   double          E = {read = get_E, write = set_E};
  __property   double          F = {read = get_F, write = set_F};
  __property   double          x1 = {read = get_x1, write = set_x1};
  __property   double          y1 = {read = get_y1, write = set_y1};
  __property   double          x2 = {read = get_x2, write = set_x2};
  __property   double          y2 = {read = get_y2, write = set_y2};
  __property   long            style = {read = get_style, write = set_style};
};
// *********************************************************************//
// Interface: ksCentreParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FA5-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksCentreParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_baseCurve(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* baseCurve */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_baseCurve()
  {
    _TDispID _dispid(/* baseCurve */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x()
  {
    _TDispID _dispid(/* x */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y()
  {
    _TDispID _dispid(/* y */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_angle(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angle */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angle()
  {
    _TDispID _dispid(/* angle */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_type(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* type */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_type()
  {
    _TDispID _dispid(/* type */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_standXpTail(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* standXpTail */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_standXpTail()
  {
    _TDispID _dispid(/* standXpTail */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_standXmTail(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* standXmTail */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_standXmTail()
  {
    _TDispID _dispid(/* standXmTail */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_standYpTail(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* standYpTail */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_standYpTail()
  {
    _TDispID _dispid(/* standYpTail */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_standYmTail(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* standYmTail */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_standYmTail()
  {
    _TDispID _dispid(/* standYmTail */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_lenXpTail(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* lenXpTail */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_lenXpTail()
  {
    _TDispID _dispid(/* lenXpTail */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_lenXmTail(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* lenXmTail */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_lenXmTail()
  {
    _TDispID _dispid(/* lenXmTail */ DISPID(11));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_lenYpTail(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* lenYpTail */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_lenYpTail()
  {
    _TDispID _dispid(/* lenYpTail */ DISPID(12));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_lenYmTail(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* lenYmTail */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_lenYmTail()
  {
    _TDispID _dispid(/* lenYmTail */ DISPID(13));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(14));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            baseCurve = {read = get_baseCurve, write = set_baseCurve};
  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   double          angle = {read = get_angle, write = set_angle};
  __property   short           type = {read = get_type, write = set_type};
  __property   TOLEBOOL        standXpTail = {read = get_standXpTail, write = set_standXpTail};
  __property   TOLEBOOL        standXmTail = {read = get_standXmTail, write = set_standXmTail};
  __property   TOLEBOOL        standYpTail = {read = get_standYpTail, write = set_standYpTail};
  __property   TOLEBOOL        standYmTail = {read = get_standYmTail, write = set_standYmTail};
  __property   double          lenXpTail = {read = get_lenXpTail, write = set_lenXpTail};
  __property   double          lenXmTail = {read = get_lenXmTail, write = set_lenXmTail};
  __property   double          lenYpTail = {read = get_lenYpTail, write = set_lenYpTail};
  __property   double          lenYmTail = {read = get_lenYmTail, write = set_lenYmTail};
};
// *********************************************************************//
// Interface: ksPlacementParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FA8-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksPlacementParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_xBase(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* xBase */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_xBase()
  {
    _TDispID _dispid(/* xBase */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_yBase(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* yBase */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_yBase()
  {
    _TDispID _dispid(/* yBase */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_scale_(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* scale_ */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_scale_()
  {
    _TDispID _dispid(/* scale_ */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_angle(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angle */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angle()
  {
    _TDispID _dispid(/* angle */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          xBase = {read = get_xBase, write = set_xBase};
  __property   double          yBase = {read = get_yBase, write = set_yBase};
  __property   double          scale_ = {read = get_scale_, write = set_scale_};
  __property   double          angle = {read = get_angle, write = set_angle};
};
// *********************************************************************//
// Interface: ksRasterParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FAB-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksRasterParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_fileName(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* fileName */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_fileName()
  {
    _TDispID _dispid(/* fileName */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_embeded(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* embeded */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_embeded()
  {
    _TDispID _dispid(/* embeded */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlace()
  {
    _TDispID _dispid(/* GetPlace */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPlace(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetPlace */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            fileName = {read = get_fileName, write = set_fileName};
  __property   TOLEBOOL        embeded = {read = get_embeded, write = set_embeded};
};
// *********************************************************************//
// Interface: ksPolylineParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FAE-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksPolylineParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_closed(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* closed */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_closed()
  {
    _TDispID _dispid(/* closed */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetpMathPoint()
  {
    _TDispID _dispid(/* GetpMathPoint */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetpMathPoint(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetpMathPoint */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            style = {read = get_style, write = set_style};
  __property   TOLEBOOL        closed = {read = get_closed, write = set_closed};
};
// *********************************************************************//
// Interface: ksInsertFragmentParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FB1-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksInsertFragmentParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_fileName(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* fileName */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_fileName()
  {
    _TDispID _dispid(/* fileName */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_comment(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* comment */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_comment()
  {
    _TDispID _dispid(/* comment */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_insertType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* insertType */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_insertType()
  {
    _TDispID _dispid(/* insertType */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_multiLayer(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* multiLayer */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_multiLayer()
  {
    _TDispID _dispid(/* multiLayer */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlace()
  {
    _TDispID _dispid(/* GetPlace */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPlace(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetPlace */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            fileName = {read = get_fileName, write = set_fileName};
  __property   BSTR            comment = {read = get_comment, write = set_comment};
  __property   short           insertType = {read = get_insertType, write = set_insertType};
  __property   TOLEBOOL        multiLayer = {read = get_multiLayer, write = set_multiLayer};
};
// *********************************************************************//
// Interface: ksViewParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FB4-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksViewParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_x(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x()
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y()
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_angle(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angle */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angle()
  {
    _TDispID _dispid(/* angle */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_scale_(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* scale_ */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_scale_()
  {
    _TDispID _dispid(/* scale_ */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_color(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* color */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_color()
  {
    _TDispID _dispid(/* color */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_state(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* state */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_state()
  {
    _TDispID _dispid(/* state */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_name(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* name */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_name()
  {
    _TDispID _dispid(/* name */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   double          angle = {read = get_angle, write = set_angle};
  __property   double          scale_ = {read = get_scale_, write = set_scale_};
  __property   long            color = {read = get_color, write = set_color};
  __property   short           state = {read = get_state, write = set_state};
  __property   BSTR            name = {read = get_name, write = set_name};
};
// *********************************************************************//
// Interface: ksLBreakDimSource
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FB7-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksLBreakDimSource : public TDispWrapper<IDispatch>
{
  void __fastcall set_x1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x1 */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x1()
  {
    _TDispID _dispid(/* x1 */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y1 */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y1()
  {
    _TDispID _dispid(/* y1 */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x2 */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x2()
  {
    _TDispID _dispid(/* x2 */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y2 */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y2()
  {
    _TDispID _dispid(/* y2 */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x3(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x3 */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x3()
  {
    _TDispID _dispid(/* x3 */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y3(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y3 */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y3()
  {
    _TDispID _dispid(/* y3 */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          x1 = {read = get_x1, write = set_x1};
  __property   double          y1 = {read = get_y1, write = set_y1};
  __property   double          x2 = {read = get_x2, write = set_x2};
  __property   double          y2 = {read = get_y2, write = set_y2};
  __property   double          x3 = {read = get_x3, write = set_x3};
  __property   double          y3 = {read = get_y3, write = set_y3};
};
// *********************************************************************//
// Interface: ksBreakDimDrawing
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FBA-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksBreakDimDrawing : public TDispWrapper<IDispatch>
{
  void __fastcall set_pl(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* pl */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_pl()
  {
    _TDispID _dispid(/* pl */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_pt(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* pt */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_pt()
  {
    _TDispID _dispid(/* pt */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_textPos(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* textPos */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_textPos()
  {
    _TDispID _dispid(/* textPos */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_shelfDir(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* shelfDir */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_shelfDir()
  {
    _TDispID _dispid(/* shelfDir */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_angle(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angle */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angle()
  {
    _TDispID _dispid(/* angle */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_length(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* length */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_length()
  {
    _TDispID _dispid(/* length */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        pl = {read = get_pl, write = set_pl};
  __property   short           pt = {read = get_pt, write = set_pt};
  __property   long            textPos = {read = get_textPos, write = set_textPos};
  __property   long            shelfDir = {read = get_shelfDir, write = set_shelfDir};
  __property   double          angle = {read = get_angle, write = set_angle};
  __property   long            length = {read = get_length, write = set_length};
};
// *********************************************************************//
// Interface: ksLBreakDimParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FBD-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksLBreakDimParam : public TDispWrapper<IDispatch>
{
  LPDISPATCH __fastcall GetTPar()
  {
    _TDispID _dispid(/* GetTPar */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetTPar(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetTPar */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetDPar()
  {
    _TDispID _dispid(/* GetDPar */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetDPar(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetDPar */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSPar()
  {
    _TDispID _dispid(/* GetSPar */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSPar(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetSPar */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksABreakDimParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FC0-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksABreakDimParam : public TDispWrapper<IDispatch>
{
  LPDISPATCH __fastcall GetTPar()
  {
    _TDispID _dispid(/* GetTPar */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetTPar(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetTPar */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetDPar()
  {
    _TDispID _dispid(/* GetDPar */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetDPar(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetDPar */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSPar()
  {
    _TDispID _dispid(/* GetSPar */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSPar(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetSPar */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksInsertFragmentParamEx
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FC3-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksInsertFragmentParamEx : public TDispWrapper<IDispatch>
{
  void __fastcall set_fileName(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* fileName */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_fileName()
  {
    _TDispID _dispid(/* fileName */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_comment(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* comment */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_comment()
  {
    _TDispID _dispid(/* comment */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_insertType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* insertType */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_insertType()
  {
    _TDispID _dispid(/* insertType */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_multiLayer(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* multiLayer */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_multiLayer()
  {
    _TDispID _dispid(/* multiLayer */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_scaleProjLinesSize(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* scaleProjLinesSize */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_scaleProjLinesSize()
  {
    _TDispID _dispid(/* scaleProjLinesSize */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlace()
  {
    _TDispID _dispid(/* GetPlace */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPlace(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetPlace */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            fileName = {read = get_fileName, write = set_fileName};
  __property   BSTR            comment = {read = get_comment, write = set_comment};
  __property   short           insertType = {read = get_insertType, write = set_insertType};
  __property   TOLEBOOL        multiLayer = {read = get_multiLayer, write = set_multiLayer};
  __property   short           scaleProjLinesSize = {read = get_scaleProjLinesSize, write = set_scaleProjLinesSize};
};
// *********************************************************************//
// Interface: ksBezierParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FC6-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksBezierParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_closed(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* closed */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_closed()
  {
    _TDispID _dispid(/* closed */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetMathPointArr()
  {
    _TDispID _dispid(/* GetMathPointArr */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetMathPointArr(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetMathPointArr */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            style = {read = get_style, write = set_style};
  __property   short           closed = {read = get_closed, write = set_closed};
};
// *********************************************************************//
// Interface: ksBezierPointParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FC9-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksBezierPointParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_x(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x()
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y()
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ang(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* ang */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_ang()
  {
    _TDispID _dispid(/* ang */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_left(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* left */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_left()
  {
    _TDispID _dispid(/* left */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_right(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* right */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_right()
  {
    _TDispID _dispid(/* right */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   double          left = {read = get_left, write = set_left};
  __property   double          right = {read = get_right, write = set_right};
};
// *********************************************************************//
// Interface: ksDimTextParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FCC-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksDimTextParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_sign(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* sign */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_sign()
  {
    _TDispID _dispid(/* sign */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_stringFlag(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* stringFlag */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_stringFlag()
  {
    _TDispID _dispid(/* stringFlag */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_bitFlag(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* bitFlag */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_bitFlag()
  {
    _TDispID _dispid(/* bitFlag */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init(TOLEBOOL stringFlag)
  {
    _TDispID _dispid(/* Init */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = stringFlag /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetBitFlagValue(long bitFlag)
  {
    _TDispID _dispid(/* GetBitFlagValue */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = bitFlag /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetBitFlagValue(long val, TOLEBOOL state)
  {
    _TDispID _dispid(/* SetBitFlagValue */ DISPID(7));
    TAutoArgs<2> _args;
    _args[1] = val /*[VT_I4:0]*/;
    _args[2] = state /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetTextArr()
  {
    _TDispID _dispid(/* GetTextArr */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetTextArr(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetTextArr */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            style = {read = get_style, write = set_style};
  __property   long            sign = {read = get_sign, write = set_sign};
  __property   TOLEBOOL        stringFlag = {read = get_stringFlag, write = set_stringFlag};
  __property   long            bitFlag = {read = get_bitFlag, write = set_bitFlag};
};
// *********************************************************************//
// Interface: ksLDimSourceParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FCF-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksLDimSourceParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_x1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x1 */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x1()
  {
    _TDispID _dispid(/* x1 */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y1 */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y1()
  {
    _TDispID _dispid(/* y1 */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x2 */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x2()
  {
    _TDispID _dispid(/* x2 */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y2 */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y2()
  {
    _TDispID _dispid(/* y2 */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_dx(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* dx */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_dx()
  {
    _TDispID _dispid(/* dx */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_dy(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* dy */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_dy()
  {
    _TDispID _dispid(/* dy */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ps(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* ps */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_ps()
  {
    _TDispID _dispid(/* ps */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_basePoint(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* basePoint */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_basePoint()
  {
    _TDispID _dispid(/* basePoint */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          x1 = {read = get_x1, write = set_x1};
  __property   double          y1 = {read = get_y1, write = set_y1};
  __property   double          x2 = {read = get_x2, write = set_x2};
  __property   double          y2 = {read = get_y2, write = set_y2};
  __property   double          dx = {read = get_dx, write = set_dx};
  __property   double          dy = {read = get_dy, write = set_dy};
  __property   short           ps = {read = get_ps, write = set_ps};
  __property   short           basePoint = {read = get_basePoint, write = set_basePoint};
};
// *********************************************************************//
// Interface: ksDimDrawingParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FD2-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksDimDrawingParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_pl1(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* pl1 */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_pl1()
  {
    _TDispID _dispid(/* pl1 */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_pl2(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* pl2 */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_pl2()
  {
    _TDispID _dispid(/* pl2 */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_pt1(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* pt1 */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_pt1()
  {
    _TDispID _dispid(/* pt1 */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_pt2(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* pt2 */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_pt2()
  {
    _TDispID _dispid(/* pt2 */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_textPos(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* textPos */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_textPos()
  {
    _TDispID _dispid(/* textPos */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_textBase(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* textBase */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_textBase()
  {
    _TDispID _dispid(/* textBase */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_shelfDir(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* shelfDir */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_shelfDir()
  {
    _TDispID _dispid(/* shelfDir */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ang(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* ang */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_ang()
  {
    _TDispID _dispid(/* ang */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_lenght(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* lenght */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_lenght()
  {
    _TDispID _dispid(/* lenght */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        pl1 = {read = get_pl1, write = set_pl1};
  __property   TOLEBOOL        pl2 = {read = get_pl2, write = set_pl2};
  __property   short           pt1 = {read = get_pt1, write = set_pt1};
  __property   short           pt2 = {read = get_pt2, write = set_pt2};
  __property   long            textPos = {read = get_textPos, write = set_textPos};
  __property   short           textBase = {read = get_textBase, write = set_textBase};
  __property   long            shelfDir = {read = get_shelfDir, write = set_shelfDir};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   long            lenght = {read = get_lenght, write = set_lenght};
};
// *********************************************************************//
// Interface: ksLDimParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FD5-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksLDimParam : public TDispWrapper<IDispatch>
{
  LPDISPATCH __fastcall GetTPar()
  {
    _TDispID _dispid(/* GetTPar */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetTPar(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetTPar */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetDPar()
  {
    _TDispID _dispid(/* GetDPar */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetDPar(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetDPar */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSPar()
  {
    _TDispID _dispid(/* GetSPar */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSPar(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetSPar */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksADimSourceParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FD8-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksADimSourceParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_xc(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* xc */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_xc()
  {
    _TDispID _dispid(/* xc */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_yc(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* yc */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_yc()
  {
    _TDispID _dispid(/* yc */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x1 */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x1()
  {
    _TDispID _dispid(/* x1 */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y1 */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y1()
  {
    _TDispID _dispid(/* y1 */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x2 */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x2()
  {
    _TDispID _dispid(/* x2 */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y2 */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y2()
  {
    _TDispID _dispid(/* y2 */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ang1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* ang1 */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_ang1()
  {
    _TDispID _dispid(/* ang1 */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ang2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* ang2 */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_ang2()
  {
    _TDispID _dispid(/* ang2 */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_dir(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* dir */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_dir()
  {
    _TDispID _dispid(/* dir */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_rad(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* rad */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_rad()
  {
    _TDispID _dispid(/* rad */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          xc = {read = get_xc, write = set_xc};
  __property   double          yc = {read = get_yc, write = set_yc};
  __property   double          x1 = {read = get_x1, write = set_x1};
  __property   double          y1 = {read = get_y1, write = set_y1};
  __property   double          x2 = {read = get_x2, write = set_x2};
  __property   double          y2 = {read = get_y2, write = set_y2};
  __property   double          ang1 = {read = get_ang1, write = set_ang1};
  __property   double          ang2 = {read = get_ang2, write = set_ang2};
  __property   long            dir = {read = get_dir, write = set_dir};
  __property   double          rad = {read = get_rad, write = set_rad};
};
// *********************************************************************//
// Interface: ksDimensionPartsParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FDB-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksDimensionPartsParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_line1(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* line1 */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_line1()
  {
    _TDispID _dispid(/* line1 */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_line2(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* line2 */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_line2()
  {
    _TDispID _dispid(/* line2 */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_dimLine(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* dimLine */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_dimLine()
  {
    _TDispID _dispid(/* dimLine */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_dimLine1(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* dimLine1 */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_dimLine1()
  {
    _TDispID _dispid(/* dimLine1 */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_leg(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* leg */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_leg()
  {
    _TDispID _dispid(/* leg */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_shelf(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* shelf */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_shelf()
  {
    _TDispID _dispid(/* shelf */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_gr(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* gr */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_gr()
  {
    _TDispID _dispid(/* gr */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_curveExt(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* curveExt */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_curveExt()
  {
    _TDispID _dispid(/* curveExt */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            line1 = {read = get_line1, write = set_line1};
  __property   long            line2 = {read = get_line2, write = set_line2};
  __property   long            dimLine = {read = get_dimLine, write = set_dimLine};
  __property   long            dimLine1 = {read = get_dimLine1, write = set_dimLine1};
  __property   long            leg = {read = get_leg, write = set_leg};
  __property   long            shelf = {read = get_shelf, write = set_shelf};
  __property   long            gr = {read = get_gr, write = set_gr};
  __property   long            curveExt = {read = get_curveExt, write = set_curveExt};
};
// *********************************************************************//
// Interface: ksADimParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FDE-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksADimParam : public TDispWrapper<IDispatch>
{
  LPDISPATCH __fastcall GetTPar()
  {
    _TDispID _dispid(/* GetTPar */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetTPar(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetTPar */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetDPar()
  {
    _TDispID _dispid(/* GetDPar */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetDPar(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetDPar */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSPar()
  {
    _TDispID _dispid(/* GetSPar */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSPar(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetSPar */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksRBreakDrawingParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FE1-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksRBreakDrawingParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_pt(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* pt */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_pt()
  {
    _TDispID _dispid(/* pt */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ang(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* ang */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_ang()
  {
    _TDispID _dispid(/* ang */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_pb(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* pb */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_pb()
  {
    _TDispID _dispid(/* pb */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           pt = {read = get_pt, write = set_pt};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   long            pb = {read = get_pb, write = set_pb};
};
// *********************************************************************//
// Interface: ksRBreakDimParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FE4-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksRBreakDimParam : public TDispWrapper<IDispatch>
{
  LPDISPATCH __fastcall GetTPar()
  {
    _TDispID _dispid(/* GetTPar */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetTPar(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetTPar */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetDPar()
  {
    _TDispID _dispid(/* GetDPar */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetDPar(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetDPar */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSPar()
  {
    _TDispID _dispid(/* GetSPar */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSPar(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetSPar */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksQualityItemParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FE7-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksQualityItemParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_minLimit(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* minLimit */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_minLimit()
  {
    _TDispID _dispid(/* minLimit */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_maxLimit(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* maxLimit */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_maxLimit()
  {
    _TDispID _dispid(/* maxLimit */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_high(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* high */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_high()
  {
    _TDispID _dispid(/* high */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_low(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* low */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_low()
  {
    _TDispID _dispid(/* low */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           minLimit = {read = get_minLimit, write = set_minLimit};
  __property   short           maxLimit = {read = get_maxLimit, write = set_maxLimit};
  __property   double          high = {read = get_high, write = set_high};
  __property   double          low = {read = get_low, write = set_low};
};
// *********************************************************************//
// Interface: ksQualityContensParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FEA-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksQualityContensParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_systemQuality(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* systemQuality */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_systemQuality()
  {
    _TDispID _dispid(/* systemQuality */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_kindQuality(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* kindQuality */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_kindQuality()
  {
    _TDispID _dispid(/* kindQuality */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_name(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* name */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_name()
  {
    _TDispID _dispid(/* name */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetpQualityItems()
  {
    _TDispID _dispid(/* GetpQualityItems */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetpQualityItems(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetpQualityItems */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           systemQuality = {read = get_systemQuality, write = set_systemQuality};
  __property   short           kindQuality = {read = get_kindQuality, write = set_kindQuality};
  __property   BSTR            name = {read = get_name, write = set_name};
};
// *********************************************************************//
// Interface: ksIterator
// Flags:     (4096) Dispatchable
// GUID:      {D06C9101-98CA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksIterator : public TDispWrapper<IDispatch>
{
  void __fastcall set_reference(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* reference */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_reference()
  {
    _TDispID _dispid(/* reference */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksCreateIterator(long tipSeartch, long parent)
  {
    _TDispID _dispid(/* ksCreateIterator */ DISPID(2));
    TAutoArgs<2> _args;
    _args[1] = tipSeartch /*[VT_I4:0]*/;
    _args[2] = parent /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksMoveIterator(BSTR ksMoveIterator)
  {
    _TDispID _dispid(/* ksMoveIterator */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = ksMoveIterator /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksCreateAttrIterator(long obj, long key1, long key2, long key3, long key4, 
                                           double numb)
  {
    _TDispID _dispid(/* ksCreateAttrIterator */ DISPID(4));
    TAutoArgs<6> _args;
    _args[1] = obj /*[VT_I4:0]*/;
    _args[2] = key1 /*[VT_I4:0]*/;
    _args[3] = key2 /*[VT_I4:0]*/;
    _args[4] = key3 /*[VT_I4:0]*/;
    _args[5] = key4 /*[VT_I4:0]*/;
    _args[6] = numb /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksMoveAttrIterator(BSTR ch, long* pObj)
  {
    _TDispID _dispid(/* ksMoveAttrIterator */ DISPID(5));
    TAutoArgs<2> _args;
    _args[1] = ch /*[VT_BSTR:0]*/;
    _args[2] = pObj /*[VT_I4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksCreateSpcIterator(BSTR nameLib, long styleNumb, long spcObjType)
  {
    _TDispID _dispid(/* ksCreateSpcIterator */ DISPID(6));
    TAutoArgs<3> _args;
    _args[1] = nameLib /*[VT_BSTR:0]*/;
    _args[2] = styleNumb /*[VT_I4:0]*/;
    _args[3] = spcObjType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksCreateQualityIterator(short system, short withLimitation)
  {
    _TDispID _dispid(/* ksCreateQualityIterator */ DISPID(7));
    TAutoArgs<2> _args;
    _args[1] = system /*[VT_I2:0]*/;
    _args[2] = withLimitation /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksMoveQualityIterator(LPDISPATCH param, short inMM, BSTR ch)
  {
    _TDispID _dispid(/* ksMoveQualityIterator */ DISPID(8));
    TAutoArgs<3> _args;
    _args[1] = param /*[VT_DISPATCH:0]*/;
    _args[2] = inMM /*[VT_I2:0]*/;
    _args[3] = ch /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDeleteIterator()
  {
    _TDispID _dispid(/* ksDeleteIterator */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            reference = {read = get_reference, write = set_reference};
};
// *********************************************************************//
// Interface: ksFragment
// Flags:     (4096) Dispatchable
// GUID:      {D06C9104-98CA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksFragment : public TDispWrapper<IDispatch>
{
  long __fastcall ksFragmentDefinition(BSTR fileName, BSTR comment, short insertType)
  {
    _TDispID _dispid(/* ksFragmentDefinition */ DISPID(1));
    TAutoArgs<3> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = comment /*[VT_BSTR:0]*/;
    _args[3] = insertType /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksInsertFragment(long p, TOLEBOOL curentLayer, LPDISPATCH par)
  {
    _TDispID _dispid(/* ksInsertFragment */ DISPID(2));
    TAutoArgs<3> _args;
    _args[1] = p /*[VT_I4:0]*/;
    _args[2] = curentLayer /*[VT_BOOL:0]*/;
    _args[3] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksReadFragment(BSTR fileName, TOLEBOOL curentLayer, LPDISPATCH par)
  {
    _TDispID _dispid(/* ksReadFragment */ DISPID(3));
    TAutoArgs<3> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = curentLayer /*[VT_BOOL:0]*/;
    _args[3] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksReadFragmentToGroup(BSTR fileName, TOLEBOOL curentLayer, LPDISPATCH par)
  {
    _TDispID _dispid(/* ksReadFragmentToGroup */ DISPID(4));
    TAutoArgs<3> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = curentLayer /*[VT_BOOL:0]*/;
    _args[3] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksReadFragmentToGroupEx(BSTR fileName, TOLEBOOL curentLayer, LPDISPATCH par, 
                                          TOLEBOOL scaleProjLinesSize)
  {
    _TDispID _dispid(/* ksReadFragmentToGroupEx */ DISPID(5));
    TAutoArgs<4> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = curentLayer /*[VT_BOOL:0]*/;
    _args[3] = par /*[VT_DISPATCH:0]*/;
    _args[4] = scaleProjLinesSize /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksWriteFragment(long gr, BSTR fileName, BSTR comment, double xb, double yb)
  {
    _TDispID _dispid(/* ksWriteFragment */ DISPID(6));
    TAutoArgs<5> _args;
    _args[1] = gr /*[VT_I4:0]*/;
    _args[2] = fileName /*[VT_BSTR:0]*/;
    _args[3] = comment /*[VT_BSTR:0]*/;
    _args[4] = xb /*[VT_R8:0]*/;
    _args[5] = yb /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksLocalFragmentDefinition(BSTR comment)
  {
    _TDispID _dispid(/* ksLocalFragmentDefinition */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = comment /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCloseLocalFragmentDefinition()
  {
    _TDispID _dispid(/* ksCloseLocalFragmentDefinition */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksInsertFragmentEx(long p, TOLEBOOL curentLayer, LPDISPATCH par, 
                                     TOLEBOOL scaleProjLinesSize)
  {
    _TDispID _dispid(/* ksInsertFragmentEx */ DISPID(9));
    TAutoArgs<4> _args;
    _args[1] = p /*[VT_I4:0]*/;
    _args[2] = curentLayer /*[VT_BOOL:0]*/;
    _args[3] = par /*[VT_DISPATCH:0]*/;
    _args[4] = scaleProjLinesSize /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksFragmentLibrary
// Flags:     (4096) Dispatchable
// GUID:      {D06C910A-98CA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksFragmentLibrary : public TDispWrapper<IDispatch>
{
  BSTR __fastcall ksChoiceFragmentFromLib(BSTR frwLibFile, long* type)
  {
    _TDispID _dispid(/* ksChoiceFragmentFromLib */ DISPID(1));
    TAutoArgs<2> _args;
    _args[1] = frwLibFile /*[VT_BSTR:0]*/;
    _args[2] = type /*[VT_I4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksFragmentLibraryOperation(BSTR libName, long type)
  {
    _TDispID _dispid(/* ksFragmentLibraryOperation */ DISPID(2));
    TAutoArgs<2> _args;
    _args[1] = libName /*[VT_BSTR:0]*/;
    _args[2] = type /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksAddFragmentToLibrary(BSTR libName, BSTR frwName)
  {
    _TDispID _dispid(/* ksAddFragmentToLibrary */ DISPID(3));
    TAutoArgs<2> _args;
    _args[1] = libName /*[VT_BSTR:0]*/;
    _args[2] = frwName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCheckFragmentLibrary(BSTR libName, TOLEBOOL possibleMessage)
  {
    _TDispID _dispid(/* ksCheckFragmentLibrary */ DISPID(4));
    TAutoArgs<2> _args;
    _args[1] = libName /*[VT_BSTR:0]*/;
    _args[2] = possibleMessage /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksExistFragmentInLibrary(BSTR frwName)
  {
    _TDispID _dispid(/* ksExistFragmentInLibrary */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = frwName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksTechnicalDemandParam
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B81-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksTechnicalDemandParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_strCount(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* strCount */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_strCount()
  {
    _TDispID _dispid(/* strCount */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPGab()
  {
    _TDispID _dispid(/* GetPGab */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPGab(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetPGab */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            style = {read = get_style, write = set_style};
  __property   short           strCount = {read = get_strCount, write = set_strCount};
};
// *********************************************************************//
// Interface: ksOrdinatedSourceParam
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B84-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksOrdinatedSourceParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_x0(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x0 */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x0()
  {
    _TDispID _dispid(/* x0 */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x1 */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x1()
  {
    _TDispID _dispid(/* x1 */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y1 */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y1()
  {
    _TDispID _dispid(/* y1 */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y0(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y0 */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y0()
  {
    _TDispID _dispid(/* y0 */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x2 */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x2()
  {
    _TDispID _dispid(/* x2 */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y2 */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y2()
  {
    _TDispID _dispid(/* y2 */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          x0 = {read = get_x0, write = set_x0};
  __property   double          x1 = {read = get_x1, write = set_x1};
  __property   double          y1 = {read = get_y1, write = set_y1};
  __property   double          y0 = {read = get_y0, write = set_y0};
  __property   double          x2 = {read = get_x2, write = set_x2};
  __property   double          y2 = {read = get_y2, write = set_y2};
};
// *********************************************************************//
// Interface: ksOrdinatedDimParam
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B87-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksOrdinatedDimParam : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetTPar()
  {
    _TDispID _dispid(/* GetTPar */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetTPar(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetTPar */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetDPar()
  {
    _TDispID _dispid(/* GetDPar */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetDPar(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetDPar */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSPar()
  {
    _TDispID _dispid(/* GetSPar */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSPar(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetSPar */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksOrdinatedDrawingParam
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B8A-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksOrdinatedDrawingParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_type(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* type */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_type()
  {
    _TDispID _dispid(/* type */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            type = {read = get_type, write = set_type};
};
// *********************************************************************//
// Interface: ksSheetSize
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B8D-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksSheetSize : public TDispWrapper<IDispatch>
{
  void __fastcall set_width(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* width */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_width()
  {
    _TDispID _dispid(/* width */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_height(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* height */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_height()
  {
    _TDispID _dispid(/* height */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          width = {read = get_width, write = set_width};
  __property   double          height = {read = get_height, write = set_height};
};
// *********************************************************************//
// Interface: ksStandartSheet
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B90-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksStandartSheet : public TDispWrapper<IDispatch>
{
  void __fastcall set_format(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* format */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_format()
  {
    _TDispID _dispid(/* format */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_multiply(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* multiply */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_multiply()
  {
    _TDispID _dispid(/* multiply */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_direct(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* direct */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_direct()
  {
    _TDispID _dispid(/* direct */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           format = {read = get_format, write = set_format};
  __property   short           multiply = {read = get_multiply, write = set_multiply};
  __property   TOLEBOOL        direct = {read = get_direct, write = set_direct};
};
// *********************************************************************//
// Interface: ksSheetPar
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B93-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksSheetPar : public TDispWrapper<IDispatch>
{
  void __fastcall set_layoutName(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* layoutName */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_layoutName()
  {
    _TDispID _dispid(/* layoutName */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_shtType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* shtType */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_shtType()
  {
    _TDispID _dispid(/* shtType */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSheetParam()
  {
    _TDispID _dispid(/* GetSheetParam */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            layoutName = {read = get_layoutName, write = set_layoutName};
  __property   short           shtType = {read = get_shtType, write = set_shtType};
};
// *********************************************************************//
// Interface: ksDocumentParam
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B96-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksDocumentParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_fileName(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* fileName */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_fileName()
  {
    _TDispID _dispid(/* fileName */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_comment(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* comment */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_comment()
  {
    _TDispID _dispid(/* comment */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_author(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* author */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_author()
  {
    _TDispID _dispid(/* author */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_type(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* type */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_type()
  {
    _TDispID _dispid(/* type */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_regime(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* regime */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_regime()
  {
    _TDispID _dispid(/* regime */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetLayoutParam()
  {
    _TDispID _dispid(/* GetLayoutParam */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            fileName = {read = get_fileName, write = set_fileName};
  __property   BSTR            comment = {read = get_comment, write = set_comment};
  __property   BSTR            author = {read = get_author, write = set_author};
  __property   short           type = {read = get_type, write = set_type};
  __property   short           regime = {read = get_regime, write = set_regime};
};
// *********************************************************************//
// Interface: ksDimensionsOptions
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B99-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksDimensionsOptions : public TDispWrapper<IDispatch>
{
  void __fastcall set_proLineExtension(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* proLineExtension */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_proLineExtension()
  {
    _TDispID _dispid(/* proLineExtension */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_textDistanceFromDimLine(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* textDistanceFromDimLine */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_textDistanceFromDimLine()
  {
    _TDispID _dispid(/* textDistanceFromDimLine */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_textDistanceFromProLine(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* textDistanceFromProLine */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_textDistanceFromProLine()
  {
    _TDispID _dispid(/* textDistanceFromProLine */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_dimLineExtension(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* dimLineExtension */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_dimLineExtension()
  {
    _TDispID _dispid(/* dimLineExtension */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_arrowLength(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* arrowLength */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_arrowLength()
  {
    _TDispID _dispid(/* arrowLength */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_decimalsCount(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* decimalsCount */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_decimalsCount()
  {
    _TDispID _dispid(/* decimalsCount */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_anglePrecisionLevel(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* anglePrecisionLevel */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_anglePrecisionLevel()
  {
    _TDispID _dispid(/* anglePrecisionLevel */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_hiddenToleranceNumber(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* hiddenToleranceNumber */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_hiddenToleranceNumber()
  {
    _TDispID _dispid(/* hiddenToleranceNumber */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          proLineExtension = {read = get_proLineExtension, write = set_proLineExtension};
  __property   double          textDistanceFromDimLine = {read = get_textDistanceFromDimLine, write = set_textDistanceFromDimLine};
  __property   double          textDistanceFromProLine = {read = get_textDistanceFromProLine, write = set_textDistanceFromProLine};
  __property   double          dimLineExtension = {read = get_dimLineExtension, write = set_dimLineExtension};
  __property   double          arrowLength = {read = get_arrowLength, write = set_arrowLength};
  __property   long            style = {read = get_style, write = set_style};
  __property   short           decimalsCount = {read = get_decimalsCount, write = set_decimalsCount};
  __property   long            anglePrecisionLevel = {read = get_anglePrecisionLevel, write = set_anglePrecisionLevel};
  __property   long            hiddenToleranceNumber = {read = get_hiddenToleranceNumber, write = set_hiddenToleranceNumber};
};
// *********************************************************************//
// Interface: ksSnapOptions
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B9C-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksSnapOptions : public TDispWrapper<IDispatch>
{
  void __fastcall set_nearestPoint(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* nearestPoint */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_nearestPoint()
  {
    _TDispID _dispid(/* nearestPoint */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_nearestMiddle(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* nearestMiddle */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_nearestMiddle()
  {
    _TDispID _dispid(/* nearestMiddle */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_intersect(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* intersect */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_intersect()
  {
    _TDispID _dispid(/* intersect */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_tangentToCurve(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* tangentToCurve */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_tangentToCurve()
  {
    _TDispID _dispid(/* tangentToCurve */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_normalToCurve(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* normalToCurve */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_normalToCurve()
  {
    _TDispID _dispid(/* normalToCurve */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_grid(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* grid */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_grid()
  {
    _TDispID _dispid(/* grid */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_xyAlign(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* xyAlign */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_xyAlign()
  {
    _TDispID _dispid(/* xyAlign */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_angSnap(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* angSnap */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_angSnap()
  {
    _TDispID _dispid(/* angSnap */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_pointOnCurve(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* pointOnCurve */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_pointOnCurve()
  {
    _TDispID _dispid(/* pointOnCurve */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_commonOpt(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* commonOpt */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_commonOpt()
  {
    _TDispID _dispid(/* commonOpt */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_angleStep(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angleStep */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angleStep()
  {
    _TDispID _dispid(/* angleStep */ DISPID(11));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_localSnap(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* localSnap */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_localSnap()
  {
    _TDispID _dispid(/* localSnap */ DISPID(12));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(13));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetCommonOptValue(long val)
  {
    _TDispID _dispid(/* GetCommonOptValue */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetCommonOptValue(long val, TOLEBOOL state)
  {
    _TDispID _dispid(/* SetCommonOptValue */ DISPID(15));
    TAutoArgs<2> _args;
    _args[1] = val /*[VT_I4:0]*/;
    _args[2] = state /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        nearestPoint = {read = get_nearestPoint, write = set_nearestPoint};
  __property   TOLEBOOL        nearestMiddle = {read = get_nearestMiddle, write = set_nearestMiddle};
  __property   TOLEBOOL        intersect = {read = get_intersect, write = set_intersect};
  __property   TOLEBOOL        tangentToCurve = {read = get_tangentToCurve, write = set_tangentToCurve};
  __property   TOLEBOOL        normalToCurve = {read = get_normalToCurve, write = set_normalToCurve};
  __property   TOLEBOOL        grid = {read = get_grid, write = set_grid};
  __property   TOLEBOOL        xyAlign = {read = get_xyAlign, write = set_xyAlign};
  __property   TOLEBOOL        angSnap = {read = get_angSnap, write = set_angSnap};
  __property   TOLEBOOL        pointOnCurve = {read = get_pointOnCurve, write = set_pointOnCurve};
  __property   long            commonOpt = {read = get_commonOpt, write = set_commonOpt};
  __property   double          angleStep = {read = get_angleStep, write = set_angleStep};
  __property   short           localSnap = {read = get_localSnap, write = set_localSnap};
};
// *********************************************************************//
// Interface: ksLibraryStyleParam
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B9F-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksLibraryStyleParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_styleName(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* styleName */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_styleName()
  {
    _TDispID _dispid(/* styleName */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_styleId(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* styleId */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_styleId()
  {
    _TDispID _dispid(/* styleId */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            styleName = {read = get_styleName, write = set_styleName};
  __property   long            styleId = {read = get_styleId, write = set_styleId};
};
// *********************************************************************//
// Interface: ksStampNotify
// Flags:     (4096) Dispatchable
// GUID:      {404E7D5A-A13F-4CFF-8214-FEA7012110CB}
// *********************************************************************//
interface ksStampNotify : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall BeginEditStamp()
  {
    _TDispID _dispid(/* BeginEditStamp */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall EndEditStamp(TOLEBOOL editResult)
  {
    _TDispID _dispid(/* EndEditStamp */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = editResult /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall StampCellDblClick(long number)
  {
    _TDispID _dispid(/* StampCellDblClick */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = number /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall StampCellBeginEdit(long number)
  {
    _TDispID _dispid(/* StampCellBeginEdit */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = number /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall StampBeginClearCells(TVariant cells)
  {
    _TDispID _dispid(/* StampBeginClearCells */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = cells /*[VT_VARIANT:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksStamp
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5BA5-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksStamp : public TDispWrapper<IDispatch>
{
  void __fastcall set_reference(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* reference */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_reference()
  {
    _TDispID _dispid(/* reference */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksOpenStamp()
  {
    _TDispID _dispid(/* ksOpenStamp */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCloseStamp()
  {
    _TDispID _dispid(/* ksCloseStamp */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksClearStamp(long numb)
  {
    _TDispID _dispid(/* ksClearStamp */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = numb /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ksGetStampColumnText(long* numb)
  {
    _TDispID _dispid(/* ksGetStampColumnText */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = numb /*[VT_I4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetStampColumnText(long numb, LPDISPATCH textArr)
  {
    _TDispID _dispid(/* ksSetStampColumnText */ DISPID(6));
    TAutoArgs<2> _args;
    _args[1] = numb /*[VT_I4:0]*/;
    _args[2] = textArr /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksColumnNumber(long numb)
  {
    _TDispID _dispid(/* ksColumnNumber */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = numb /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksTextLine(LPDISPATCH textItem)
  {
    _TDispID _dispid(/* ksTextLine */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = textItem /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetTextLineAlign(short align)
  {
    _TDispID _dispid(/* ksSetTextLineAlign */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = align /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_SheetNumb()
  {
    _TDispID _dispid(/* SheetNumb */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            reference = {read = get_reference, write = set_reference};
  __property   long            SheetNumb = {read = get_SheetNumb};
};
// *********************************************************************//
// Interface: ksSheetOptions
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5BA8-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksSheetOptions : public TDispWrapper<IDispatch>
{
  void __fastcall set_shtType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* shtType */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_shtType()
  {
    _TDispID _dispid(/* shtType */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_layoutName(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* layoutName */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_layoutName()
  {
    _TDispID _dispid(/* layoutName */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_sheetType(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* sheetType */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_sheetType()
  {
    _TDispID _dispid(/* sheetType */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSheetParam(TOLEBOOL type)
  {
    _TDispID _dispid(/* GetSheetParam */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = type /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           shtType = {read = get_shtType, write = set_shtType};
  __property   BSTR            layoutName = {read = get_layoutName, write = set_layoutName};
  __property   TOLEBOOL        sheetType = {read = get_sheetType, write = set_sheetType};
};
// *********************************************************************//
// Interface: ksCurvePatternEx
// Flags:     (4096) Dispatchable
// GUID:      {910EC549-958D-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksCurvePatternEx : public TDispWrapper<IDispatch>
{
  void __fastcall set_visibleSeg(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* visibleSeg */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_visibleSeg()
  {
    _TDispID _dispid(/* visibleSeg */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_invisibleSeg(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* invisibleSeg */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_invisibleSeg()
  {
    _TDispID _dispid(/* invisibleSeg */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_dx(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* dx */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_dx()
  {
    _TDispID _dispid(/* dx */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_dy(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* dy */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_dy()
  {
    _TDispID _dispid(/* dy */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_pictureType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* pictureType */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_pictureType()
  {
    _TDispID _dispid(/* pictureType */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_frwName(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* frwName */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_frwName()
  {
    _TDispID _dispid(/* frwName */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetCurvePicture()
  {
    _TDispID _dispid(/* GetCurvePicture */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetCurvePicture(LPDISPATCH picture)
  {
    _TDispID _dispid(/* SetCurvePicture */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = picture /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          visibleSeg = {read = get_visibleSeg, write = set_visibleSeg};
  __property   double          invisibleSeg = {read = get_invisibleSeg, write = set_invisibleSeg};
  __property   double          dx = {read = get_dx, write = set_dx};
  __property   double          dy = {read = get_dy, write = set_dy};
  __property   short           pictureType = {read = get_pictureType, write = set_pictureType};
  __property   BSTR            frwName = {read = get_frwName, write = set_frwName};
};
// *********************************************************************//
// Interface: ksCurveStyleParam
// Flags:     (4096) Dispatchable
// GUID:      {910EC54C-958D-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksCurveStyleParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_name(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* name */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_name()
  {
    _TDispID _dispid(/* name */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_color(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* color */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_color()
  {
    _TDispID _dispid(/* color */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_paperWidth(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* paperWidth */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_paperWidth()
  {
    _TDispID _dispid(/* paperWidth */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_screenWidth(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* screenWidth */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_screenWidth()
  {
    _TDispID _dispid(/* screenWidth */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_curveType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* curveType */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_curveType()
  {
    _TDispID _dispid(/* curveType */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_even(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* even */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_even()
  {
    _TDispID _dispid(/* even */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_widthPen(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* widthPen */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_widthPen()
  {
    _TDispID _dispid(/* widthPen */ DISPID(12));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPPattern(long type)
  {
    _TDispID _dispid(/* GetPPattern */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = type /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPPattern(LPDISPATCH pattern)
  {
    _TDispID _dispid(/* SetPPattern */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = pattern /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPropertyCurve(long val, TOLEBOOL state)
  {
    _TDispID _dispid(/* SetPropertyCurve */ DISPID(9));
    TAutoArgs<2> _args;
    _args[1] = val /*[VT_I4:0]*/;
    _args[2] = state /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetPropertyCurve(long val)
  {
    _TDispID _dispid(/* GetPropertyCurve */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            name = {read = get_name, write = set_name};
  __property   long            color = {read = get_color, write = set_color};
  __property   double          paperWidth = {read = get_paperWidth, write = set_paperWidth};
  __property   short           screenWidth = {read = get_screenWidth, write = set_screenWidth};
  __property   short           curveType = {read = get_curveType, write = set_curveType};
  __property   short           even = {read = get_even, write = set_even};
  __property   short           widthPen = {read = get_widthPen, write = set_widthPen};
};
// *********************************************************************//
// Interface: ksTextStyleParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E24-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksTextStyleParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_name(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* name */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_name()
  {
    _TDispID _dispid(/* name */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_height(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* height */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_height()
  {
    _TDispID _dispid(/* height */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ksu(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* ksu */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_ksu()
  {
    _TDispID _dispid(/* ksu */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_step(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* step */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_step()
  {
    _TDispID _dispid(/* step */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_fontName(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* fontName */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_fontName()
  {
    _TDispID _dispid(/* fontName */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_color(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* color */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_color()
  {
    _TDispID _dispid(/* color */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_align(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* align */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_align()
  {
    _TDispID _dispid(/* align */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_bold(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* bold */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_bold()
  {
    _TDispID _dispid(/* bold */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_italic(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* italic */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_italic()
  {
    _TDispID _dispid(/* italic */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_underline(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* underline */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_underline()
  {
    _TDispID _dispid(/* underline */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_posKS(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* posKS */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_posKS()
  {
    _TDispID _dispid(/* posKS */ DISPID(11));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_stepParPre(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* stepParPre */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_stepParPre()
  {
    _TDispID _dispid(/* stepParPre */ DISPID(12));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_stepParPst(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* stepParPst */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_stepParPst()
  {
    _TDispID _dispid(/* stepParPst */ DISPID(13));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_leftEdge(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* leftEdge */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_leftEdge()
  {
    _TDispID _dispid(/* leftEdge */ DISPID(14));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_rightEdge(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* rightEdge */ DISPID(15));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_rightEdge()
  {
    _TDispID _dispid(/* rightEdge */ DISPID(15));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(16));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            name = {read = get_name, write = set_name};
  __property   double          height = {read = get_height, write = set_height};
  __property   double          ksu = {read = get_ksu, write = set_ksu};
  __property   double          step = {read = get_step, write = set_step};
  __property   BSTR            fontName = {read = get_fontName, write = set_fontName};
  __property   long            color = {read = get_color, write = set_color};
  __property   short           align = {read = get_align, write = set_align};
  __property   short           bold = {read = get_bold, write = set_bold};
  __property   short           italic = {read = get_italic, write = set_italic};
  __property   short           underline = {read = get_underline, write = set_underline};
  __property   double          posKS = {read = get_posKS, write = set_posKS};
  __property   double          stepParPre = {read = get_stepParPre, write = set_stepParPre};
  __property   double          stepParPst = {read = get_stepParPst, write = set_stepParPst};
  __property   double          leftEdge = {read = get_leftEdge, write = set_leftEdge};
  __property   double          rightEdge = {read = get_rightEdge, write = set_rightEdge};
};
// *********************************************************************//
// Interface: ksHatchLineParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E27-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksHatchLineParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_x(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x()
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y()
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_dx(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* dx */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_dx()
  {
    _TDispID _dispid(/* dx */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_dy(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* dy */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_dy()
  {
    _TDispID _dispid(/* dy */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ang(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* ang */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_ang()
  {
    _TDispID _dispid(/* ang */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_typeCurvStyle(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* typeCurvStyle */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_typeCurvStyle()
  {
    _TDispID _dispid(/* typeCurvStyle */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_style(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetCurPar()
  {
    _TDispID _dispid(/* GetCurPar */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetCurPar(LPDISPATCH curPar)
  {
    _TDispID _dispid(/* SetCurPar */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = curPar /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   double          dx = {read = get_dx, write = set_dx};
  __property   double          dy = {read = get_dy, write = set_dy};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   short           typeCurvStyle = {read = get_typeCurvStyle, write = set_typeCurvStyle};
  __property   short           style = {read = get_style, write = set_style};
};
// *********************************************************************//
// Interface: ksHatchStyleParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E2A-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksHatchStyleParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_name(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* name */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_name()
  {
    _TDispID _dispid(/* name */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_step(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* step */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_step()
  {
    _TDispID _dispid(/* step */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ang(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* ang */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_ang()
  {
    _TDispID _dispid(/* ang */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_width(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* width */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_width()
  {
    _TDispID _dispid(/* width */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_color(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* color */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_color()
  {
    _TDispID _dispid(/* color */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_mayChangeAngle(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* mayChangeAngle */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_mayChangeAngle()
  {
    _TDispID _dispid(/* mayChangeAngle */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_mayChangeWidth(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* mayChangeWidth */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_mayChangeWidth()
  {
    _TDispID _dispid(/* mayChangeWidth */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_mayChangeSpace(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* mayChangeSpace */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_mayChangeSpace()
  {
    _TDispID _dispid(/* mayChangeSpace */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_isScalable(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* isScalable */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_isScalable()
  {
    _TDispID _dispid(/* isScalable */ DISPID(11));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetRefPoint()
  {
    _TDispID _dispid(/* GetRefPoint */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetRefPoint(LPDISPATCH refPoint)
  {
    _TDispID _dispid(/* SetRefPoint */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = refPoint /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetArrLineParam()
  {
    _TDispID _dispid(/* GetArrLineParam */ DISPID(12));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetArrLineParam(LPDISPATCH arrLineParam)
  {
    _TDispID _dispid(/* SetArrLineParam */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = arrLineParam /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(14));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            name = {read = get_name, write = set_name};
  __property   double          step = {read = get_step, write = set_step};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   double          width = {read = get_width, write = set_width};
  __property   long            color = {read = get_color, write = set_color};
  __property   short           mayChangeAngle = {read = get_mayChangeAngle, write = set_mayChangeAngle};
  __property   short           mayChangeWidth = {read = get_mayChangeWidth, write = set_mayChangeWidth};
  __property   short           mayChangeSpace = {read = get_mayChangeSpace, write = set_mayChangeSpace};
  __property   short           isScalable = {read = get_isScalable, write = set_isScalable};
};
// *********************************************************************//
// Interface: ksRectParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E2D-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksRectParam : public TDispWrapper<IDispatch>
{
  LPDISPATCH __fastcall GetpBot()
  {
    _TDispID _dispid(/* GetpBot */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetpBot(LPDISPATCH pBot)
  {
    _TDispID _dispid(/* SetpBot */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = pBot /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetpTop()
  {
    _TDispID _dispid(/* GetpTop */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetpTop(LPDISPATCH pTop)
  {
    _TDispID _dispid(/* SetpTop */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = pTop /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksShelfPar
// Flags:     (4096) Dispatchable
// GUID:      {3F715E30-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksShelfPar : public TDispWrapper<IDispatch>
{
  void __fastcall set_psh(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* psh */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_psh()
  {
    _TDispID _dispid(/* psh */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ang(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* ang */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_ang()
  {
    _TDispID _dispid(/* ang */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_length(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* length */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_length()
  {
    _TDispID _dispid(/* length */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            psh = {read = get_psh, write = set_psh};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   long            length = {read = get_length, write = set_length};
};
// *********************************************************************//
// Interface: ksRoughPar
// Flags:     (4096) Dispatchable
// GUID:      {3F715E33-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksRoughPar : public TDispWrapper<IDispatch>
{
  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_type(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* type */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_type()
  {
    _TDispID _dispid(/* type */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_around(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* around */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_around()
  {
    _TDispID _dispid(/* around */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x()
  {
    _TDispID _dispid(/* x */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y()
  {
    _TDispID _dispid(/* y */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ang(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* ang */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_ang()
  {
    _TDispID _dispid(/* ang */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_cText0(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* cText0 */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_cText0()
  {
    _TDispID _dispid(/* cText0 */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_cText1(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* cText1 */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_cText1()
  {
    _TDispID _dispid(/* cText1 */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_cText2(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* cText2 */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_cText2()
  {
    _TDispID _dispid(/* cText2 */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_cText3(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* cText3 */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_cText3()
  {
    _TDispID _dispid(/* cText3 */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetpText()
  {
    _TDispID _dispid(/* GetpText */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetpText(LPDISPATCH pText)
  {
    _TDispID _dispid(/* SetpText */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = pText /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(13));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall InitEx(long style)
  {
    _TDispID _dispid(/* InitEx */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = style /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            style = {read = get_style, write = set_style};
  __property   short           type = {read = get_type, write = set_type};
  __property   short           around = {read = get_around, write = set_around};
  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   short           cText0 = {read = get_cText0, write = set_cText0};
  __property   short           cText1 = {read = get_cText1, write = set_cText1};
  __property   short           cText2 = {read = get_cText2, write = set_cText2};
  __property   short           cText3 = {read = get_cText3, write = set_cText3};
};
// *********************************************************************//
// Interface: ksRoughParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E36-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksRoughParam : public TDispWrapper<IDispatch>
{
  LPDISPATCH __fastcall GetrPar()
  {
    _TDispID _dispid(/* GetrPar */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetrPar(LPDISPATCH par)
  {
    _TDispID _dispid(/* SetrPar */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetshPar()
  {
    _TDispID _dispid(/* GetshPar */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetshPar(LPDISPATCH shPar)
  {
    _TDispID _dispid(/* SetshPar */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = shPar /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksChar255
// Flags:     (4096) Dispatchable
// GUID:      {3F715E39-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksChar255 : public TDispWrapper<IDispatch>
{
  void __fastcall set_str(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* str */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_str()
  {
    _TDispID _dispid(/* str */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            str = {read = get_str, write = set_str};
};
// *********************************************************************//
// Interface: ksLeaderParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E40-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksLeaderParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_x(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x()
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y()
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_arrowType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* arrowType */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_arrowType()
  {
    _TDispID _dispid(/* arrowType */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_dirX(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* dirX */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_dirX()
  {
    _TDispID _dispid(/* dirX */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_signType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* signType */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_signType()
  {
    _TDispID _dispid(/* signType */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_around(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* around */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_around()
  {
    _TDispID _dispid(/* around */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_cText0(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* cText0 */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_cText0()
  {
    _TDispID _dispid(/* cText0 */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_cText1(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* cText1 */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_cText1()
  {
    _TDispID _dispid(/* cText1 */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_cText2(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* cText2 */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_cText2()
  {
    _TDispID _dispid(/* cText2 */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_cText3(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* cText3 */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_cText3()
  {
    _TDispID _dispid(/* cText3 */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetpTextline()
  {
    _TDispID _dispid(/* GetpTextline */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetpTextline(LPDISPATCH pTextLine)
  {
    _TDispID _dispid(/* SetpTextline */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = pTextLine /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetpPolyline()
  {
    _TDispID _dispid(/* GetpPolyline */ DISPID(13));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetpPolyline(LPDISPATCH pPolyline)
  {
    _TDispID _dispid(/* SetpPolyline */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = pPolyline /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(15));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   short           arrowType = {read = get_arrowType, write = set_arrowType};
  __property   long            dirX = {read = get_dirX, write = set_dirX};
  __property   short           signType = {read = get_signType, write = set_signType};
  __property   short           around = {read = get_around, write = set_around};
  __property   short           cText0 = {read = get_cText0, write = set_cText0};
  __property   short           cText1 = {read = get_cText1, write = set_cText1};
  __property   short           cText2 = {read = get_cText2, write = set_cText2};
  __property   short           cText3 = {read = get_cText3, write = set_cText3};
};
// *********************************************************************//
// Interface: ksPosLeaderParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E43-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksPosLeaderParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x()
  {
    _TDispID _dispid(/* x */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y()
  {
    _TDispID _dispid(/* y */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_arrowType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* arrowType */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_arrowType()
  {
    _TDispID _dispid(/* arrowType */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_dirX(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* dirX */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_dirX()
  {
    _TDispID _dispid(/* dirX */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_dirY(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* dirY */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_dirY()
  {
    _TDispID _dispid(/* dirY */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetpTextline()
  {
    _TDispID _dispid(/* GetpTextline */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetpTextline(LPDISPATCH textline)
  {
    _TDispID _dispid(/* SetpTextline */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = textline /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetpPolyline()
  {
    _TDispID _dispid(/* GetpPolyline */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetpPolyline(LPDISPATCH polyline)
  {
    _TDispID _dispid(/* SetpPolyline */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = polyline /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            style = {read = get_style, write = set_style};
  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   short           arrowType = {read = get_arrowType, write = set_arrowType};
  __property   long            dirX = {read = get_dirX, write = set_dirX};
  __property   long            dirY = {read = get_dirY, write = set_dirY};
};
// *********************************************************************//
// Interface: ksBrandLeaderParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E46-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksBrandLeaderParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_dirX(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* dirX */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_dirX()
  {
    _TDispID _dispid(/* dirX */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x()
  {
    _TDispID _dispid(/* x */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y()
  {
    _TDispID _dispid(/* y */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_arrowType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* arrowType */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_arrowType()
  {
    _TDispID _dispid(/* arrowType */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_style1(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style1 */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style1()
  {
    _TDispID _dispid(/* style1 */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_style2(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style2 */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style2()
  {
    _TDispID _dispid(/* style2 */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_cText0(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* cText0 */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_cText0()
  {
    _TDispID _dispid(/* cText0 */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_cText1(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* cText1 */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_cText1()
  {
    _TDispID _dispid(/* cText1 */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_cText2(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* cText2 */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_cText2()
  {
    _TDispID _dispid(/* cText2 */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetpTextline()
  {
    _TDispID _dispid(/* GetpTextline */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetpTextline(LPDISPATCH pTextLine)
  {
    _TDispID _dispid(/* SetpTextline */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = pTextLine /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetpPolyline()
  {
    _TDispID _dispid(/* GetpPolyline */ DISPID(12));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetpPolyline(LPDISPATCH pPolyline)
  {
    _TDispID _dispid(/* SetpPolyline */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = pPolyline /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(14));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            dirX = {read = get_dirX, write = set_dirX};
  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   short           arrowType = {read = get_arrowType, write = set_arrowType};
  __property   long            style1 = {read = get_style1, write = set_style1};
  __property   long            style2 = {read = get_style2, write = set_style2};
  __property   short           cText0 = {read = get_cText0, write = set_cText0};
  __property   short           cText1 = {read = get_cText1, write = set_cText1};
  __property   long            cText2 = {read = get_cText2, write = set_cText2};
};
// *********************************************************************//
// Interface: ksMarkerLeaderParam
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E341-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksMarkerLeaderParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_x(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x()
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y()
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_arrowType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* arrowType */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_arrowType()
  {
    _TDispID _dispid(/* arrowType */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_style1(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style1 */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style1()
  {
    _TDispID _dispid(/* style1 */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_style2(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style2 */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style2()
  {
    _TDispID _dispid(/* style2 */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_cText0(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* cText0 */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_cText0()
  {
    _TDispID _dispid(/* cText0 */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_cText1(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* cText1 */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_cText1()
  {
    _TDispID _dispid(/* cText1 */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_cText2(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* cText2 */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_cText2()
  {
    _TDispID _dispid(/* cText2 */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetpTextline()
  {
    _TDispID _dispid(/* GetpTextline */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetpTextline(LPDISPATCH pTextLine)
  {
    _TDispID _dispid(/* SetpTextline */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = pTextLine /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetpPolyline()
  {
    _TDispID _dispid(/* GetpPolyline */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetpPolyline(LPDISPATCH pPolyline)
  {
    _TDispID _dispid(/* SetpPolyline */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = pPolyline /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(13));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   short           arrowType = {read = get_arrowType, write = set_arrowType};
  __property   long            style1 = {read = get_style1, write = set_style1};
  __property   long            style2 = {read = get_style2, write = set_style2};
  __property   short           cText0 = {read = get_cText0, write = set_cText0};
  __property   short           cText1 = {read = get_cText1, write = set_cText1};
  __property   short           cText2 = {read = get_cText2, write = set_cText2};
};
// *********************************************************************//
// Interface: ksType1
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E344-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksType1 : public TDispWrapper<IDispatch>
{
  void __fastcall set_xBase(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* xBase */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_xBase()
  {
    _TDispID _dispid(/* xBase */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_yBase(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* yBase */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_yBase()
  {
    _TDispID _dispid(/* yBase */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_scale_(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* scale_ */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_scale_()
  {
    _TDispID _dispid(/* scale_ */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_angle(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angle */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angle()
  {
    _TDispID _dispid(/* angle */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_gr(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* gr */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_gr()
  {
    _TDispID _dispid(/* gr */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          xBase = {read = get_xBase, write = set_xBase};
  __property   double          yBase = {read = get_yBase, write = set_yBase};
  __property   double          scale_ = {read = get_scale_, write = set_scale_};
  __property   double          angle = {read = get_angle, write = set_angle};
  __property   long            gr = {read = get_gr, write = set_gr};
};
// *********************************************************************//
// Interface: ksType2
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E347-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksType2 : public TDispWrapper<IDispatch>
{
  void __fastcall set_xBase(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* xBase */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_xBase()
  {
    _TDispID _dispid(/* xBase */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_yBase(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* yBase */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_yBase()
  {
    _TDispID _dispid(/* yBase */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          xBase = {read = get_xBase, write = set_xBase};
  __property   double          yBase = {read = get_yBase, write = set_yBase};
};
// *********************************************************************//
// Interface: ksType3
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E34A-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksType3 : public TDispWrapper<IDispatch>
{
  void __fastcall set_xBase(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* xBase */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_xBase()
  {
    _TDispID _dispid(/* xBase */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_yBase(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* yBase */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_yBase()
  {
    _TDispID _dispid(/* yBase */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_angle(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angle */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angle()
  {
    _TDispID _dispid(/* angle */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          xBase = {read = get_xBase, write = set_xBase};
  __property   double          yBase = {read = get_yBase, write = set_yBase};
  __property   double          angle = {read = get_angle, write = set_angle};
};
// *********************************************************************//
// Interface: ksType5
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E34D-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksType5 : public TDispWrapper<IDispatch>
{
  void __fastcall set_xBase(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* xBase */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_xBase()
  {
    _TDispID _dispid(/* xBase */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_yBase(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* yBase */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_yBase()
  {
    _TDispID _dispid(/* yBase */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_angle(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angle */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angle()
  {
    _TDispID _dispid(/* angle */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_horizon(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* horizon */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_horizon()
  {
    _TDispID _dispid(/* horizon */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          xBase = {read = get_xBase, write = set_xBase};
  __property   double          yBase = {read = get_yBase, write = set_yBase};
  __property   double          angle = {read = get_angle, write = set_angle};
  __property   TOLEBOOL        horizon = {read = get_horizon, write = set_horizon};
};
// *********************************************************************//
// Interface: ksType6
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E350-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksType6 : public TDispWrapper<IDispatch>
{
  void __fastcall set_gr(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* gr */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_gr()
  {
    _TDispID _dispid(/* gr */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            gr = {read = get_gr, write = set_gr};
};
// *********************************************************************//
// Interface: ksPhantom
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E353-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksPhantom : public TDispWrapper<IDispatch>
{
  void __fastcall set_phantom(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* phantom */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_phantom()
  {
    _TDispID _dispid(/* phantom */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPhantomParam()
  {
    _TDispID _dispid(/* GetPhantomParam */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           phantom = {read = get_phantom, write = set_phantom};
};
// *********************************************************************//
// Interface: ksRequestInfo
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E356-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksRequestInfo : public TDispWrapper<IDispatch>
{
  void __fastcall set_prompt(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* prompt */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_prompt()
  {
    _TDispID _dispid(/* prompt */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_title(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* title */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_title()
  {
    _TDispID _dispid(/* title */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_commandsString(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* commandsString */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_commandsString()
  {
    _TDispID _dispid(/* commandsString */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_cursor(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* cursor */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_cursor()
  {
    _TDispID _dispid(/* cursor */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_dynamic(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* dynamic */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_dynamic()
  {
    _TDispID _dispid(/* dynamic */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_commInstance(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* commInstance */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_commInstance()
  {
    _TDispID _dispid(/* commInstance */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_menuId(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* menuId */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_menuId()
  {
    _TDispID _dispid(/* menuId */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_titleId(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* titleId */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_titleId()
  {
    _TDispID _dispid(/* titleId */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_promptId(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* promptId */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_promptId()
  {
    _TDispID _dispid(/* promptId */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_cursorId(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* cursorId */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_cursorId()
  {
    _TDispID _dispid(/* cursorId */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall GetCallBackC()
  {
    _TDispID _dispid(/* GetCallBackC */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetCallBackC(BSTR methodName, long hInst, LPDISPATCH dispatchOCX)
  {
    _TDispID _dispid(/* SetCallBackC */ DISPID(12));
    TAutoArgs<3> _args;
    _args[1] = methodName /*[VT_BSTR:0]*/;
    _args[2] = hInst /*[VT_I4:0]*/;
    _args[3] = dispatchOCX /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall GetCallBackP()
  {
    _TDispID _dispid(/* GetCallBackP */ DISPID(13));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetCallBackP(BSTR methodName, long hInst, LPDISPATCH dispatchOCX)
  {
    _TDispID _dispid(/* SetCallBackP */ DISPID(14));
    TAutoArgs<3> _args;
    _args[1] = methodName /*[VT_BSTR:0]*/;
    _args[2] = hInst /*[VT_I4:0]*/;
    _args[3] = dispatchOCX /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall GetCallBackCm()
  {
    _TDispID _dispid(/* GetCallBackCm */ DISPID(15));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetCallBackCm(BSTR methodName, long hInst, LPDISPATCH dispatchOCX)
  {
    _TDispID _dispid(/* SetCallBackCm */ DISPID(16));
    TAutoArgs<3> _args;
    _args[1] = methodName /*[VT_BSTR:0]*/;
    _args[2] = hInst /*[VT_I4:0]*/;
    _args[3] = dispatchOCX /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(17));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            prompt = {read = get_prompt, write = set_prompt};
  __property   BSTR            title = {read = get_title, write = set_title};
  __property   BSTR            commandsString = {read = get_commandsString, write = set_commandsString};
  __property   BSTR            cursor = {read = get_cursor, write = set_cursor};
  __property   long            dynamic = {read = get_dynamic, write = set_dynamic};
  __property   long            commInstance = {read = get_commInstance, write = set_commInstance};
  __property   long            menuId = {read = get_menuId, write = set_menuId};
  __property   long            titleId = {read = get_titleId, write = set_titleId};
  __property   long            promptId = {read = get_promptId, write = set_promptId};
  __property   long            cursorId = {read = get_cursorId, write = set_cursorId};
};
// *********************************************************************//
// Interface: ksViewPointerParam
// Flags:     (4096) Dispatchable
// GUID:      {CD1C0144-98DC-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksViewPointerParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x1 */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x1()
  {
    _TDispID _dispid(/* x1 */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y1 */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y1()
  {
    _TDispID _dispid(/* y1 */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x2 */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x2()
  {
    _TDispID _dispid(/* x2 */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y2 */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y2()
  {
    _TDispID _dispid(/* y2 */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_xt(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* xt */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_xt()
  {
    _TDispID _dispid(/* xt */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_yt(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* yt */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_yt()
  {
    _TDispID _dispid(/* yt */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_type(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* type */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_type()
  {
    _TDispID _dispid(/* type */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_str(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* str */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_str()
  {
    _TDispID _dispid(/* str */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetpTextline()
  {
    _TDispID _dispid(/* GetpTextline */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetpTextline(LPDISPATCH pTextLine)
  {
    _TDispID _dispid(/* SetpTextline */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = pTextLine /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(12));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            style = {read = get_style, write = set_style};
  __property   double          x1 = {read = get_x1, write = set_x1};
  __property   double          y1 = {read = get_y1, write = set_y1};
  __property   double          x2 = {read = get_x2, write = set_x2};
  __property   double          y2 = {read = get_y2, write = set_y2};
  __property   double          xt = {read = get_xt, write = set_xt};
  __property   double          yt = {read = get_yt, write = set_yt};
  __property   short           type = {read = get_type, write = set_type};
  __property   BSTR            str = {read = get_str, write = set_str};
};
// *********************************************************************//
// Interface: ksCutLineParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE81-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksCutLineParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_right(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* right */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_right()
  {
    _TDispID _dispid(/* right */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x1 */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x1()
  {
    _TDispID _dispid(/* x1 */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y1 */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y1()
  {
    _TDispID _dispid(/* y1 */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x2 */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x2()
  {
    _TDispID _dispid(/* x2 */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y2 */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y2()
  {
    _TDispID _dispid(/* y2 */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_type(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* type */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_type()
  {
    _TDispID _dispid(/* type */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_str(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* str */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_str()
  {
    _TDispID _dispid(/* str */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetpTextline()
  {
    _TDispID _dispid(/* GetpTextline */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetpTextline(LPDISPATCH pTextLine)
  {
    _TDispID _dispid(/* SetpTextline */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = pTextLine /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetpMathPoint()
  {
    _TDispID _dispid(/* GetpMathPoint */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetpMathPoint(LPDISPATCH pMathPoint)
  {
    _TDispID _dispid(/* SetpMathPoint */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = pMathPoint /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(13));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            style = {read = get_style, write = set_style};
  __property   short           right = {read = get_right, write = set_right};
  __property   double          x1 = {read = get_x1, write = set_x1};
  __property   double          y1 = {read = get_y1, write = set_y1};
  __property   double          x2 = {read = get_x2, write = set_x2};
  __property   double          y2 = {read = get_y2, write = set_y2};
  __property   short           type = {read = get_type, write = set_type};
  __property   BSTR            str = {read = get_str, write = set_str};
};
// *********************************************************************//
// Interface: ksToleranceBranch
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE84-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksToleranceBranch : public TDispWrapper<IDispatch>
{
  void __fastcall set_arrowType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* arrowType */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_arrowType()
  {
    _TDispID _dispid(/* arrowType */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_tCorner(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* tCorner */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_tCorner()
  {
    _TDispID _dispid(/* tCorner */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetpMathPoint()
  {
    _TDispID _dispid(/* GetpMathPoint */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetpMathPoint(LPDISPATCH pMathPoint)
  {
    _TDispID _dispid(/* SetpMathPoint */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = pMathPoint /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           arrowType = {read = get_arrowType, write = set_arrowType};
  __property   short           tCorner = {read = get_tCorner, write = set_tCorner};
};
// *********************************************************************//
// Interface: ksToleranceParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE87-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksToleranceParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_tBase(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* tBase */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_tBase()
  {
    _TDispID _dispid(/* tBase */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x()
  {
    _TDispID _dispid(/* x */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y()
  {
    _TDispID _dispid(/* y */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_type(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* type */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_type()
  {
    _TDispID _dispid(/* type */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetBranchArr()
  {
    _TDispID _dispid(/* GetBranchArr */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetBranchArr(LPDISPATCH branchArr)
  {
    _TDispID _dispid(/* SetBranchArr */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = branchArr /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           tBase = {read = get_tBase, write = set_tBase};
  __property   long            style = {read = get_style, write = set_style};
  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   short           type = {read = get_type, write = set_type};
};
// *********************************************************************//
// Interface: ksSpcColumnParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE8A-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksSpcColumnParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_columnType(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* columnType */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_columnType()
  {
    _TDispID _dispid(/* columnType */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ispoln(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* ispoln */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_ispoln()
  {
    _TDispID _dispid(/* ispoln */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_block(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* block */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_block()
  {
    _TDispID _dispid(/* block */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_typeVal(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* typeVal */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_typeVal()
  {
    _TDispID _dispid(/* typeVal */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_name(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* name */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_name()
  {
    _TDispID _dispid(/* name */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            columnType = {read = get_columnType, write = set_columnType};
  __property   long            ispoln = {read = get_ispoln, write = set_ispoln};
  __property   long            block = {read = get_block, write = set_block};
  __property   long            typeVal = {read = get_typeVal, write = set_typeVal};
  __property   BSTR            name = {read = get_name, write = set_name};
};
// *********************************************************************//
// Interface: ksRecordTypeAttrParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE8D-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksRecordTypeAttrParam : public TDispWrapper<IDispatch>
{
  BSTR __fastcall get_attrLibName()
  {
    _TDispID _dispid(/* attrLibName */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_key1()
  {
    _TDispID _dispid(/* key1 */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_key2()
  {
    _TDispID _dispid(/* key2 */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_key3()
  {
    _TDispID _dispid(/* key3 */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_key4()
  {
    _TDispID _dispid(/* key4 */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            attrLibName = {read = get_attrLibName};
  __property   long            key1 = {read = get_key1};
  __property   long            key2 = {read = get_key2};
  __property   long            key3 = {read = get_key3};
  __property   long            key4 = {read = get_key4};
};
// *********************************************************************//
// Interface: ksNumberTypeAttrParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE90-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksNumberTypeAttrParam : public TDispWrapper<IDispatch>
{
  double __fastcall get_minValue()
  {
    _TDispID _dispid(/* minValue */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_maxValue()
  {
    _TDispID _dispid(/* maxValue */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          minValue = {read = get_minValue};
  __property   double          maxValue = {read = get_maxValue};
};
// *********************************************************************//
// Interface: ksSpcStyleColumnParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE93-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksSpcStyleColumnParam : public TDispWrapper<IDispatch>
{
  BSTR __fastcall get_nameColumn()
  {
    _TDispID _dispid(/* nameColumn */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_columnType()
  {
    _TDispID _dispid(/* columnType */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_ispoln()
  {
    _TDispID _dispid(/* ispoln */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  short __fastcall get_edit()
  {
    _TDispID _dispid(/* edit */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  short __fastcall get_createSum()
  {
    _TDispID _dispid(/* createSum */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  short __fastcall get_multiplyToCount()
  {
    _TDispID _dispid(/* multiplyToCount */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  short __fastcall get_useForSectionTitle()
  {
    _TDispID _dispid(/* useForSectionTitle */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  short __fastcall get_textDn()
  {
    _TDispID _dispid(/* textDn */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_linkId()
  {
    _TDispID _dispid(/* linkId */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_typeVal()
  {
    _TDispID _dispid(/* typeVal */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetAdditionalParam()
  {
    _TDispID _dispid(/* GetAdditionalParam */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(12));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            nameColumn = {read = get_nameColumn};
  __property   long            columnType = {read = get_columnType};
  __property   long            ispoln = {read = get_ispoln};
  __property   short           edit = {read = get_edit};
  __property   short           createSum = {read = get_createSum};
  __property   short           multiplyToCount = {read = get_multiplyToCount};
  __property   short           useForSectionTitle = {read = get_useForSectionTitle};
  __property   short           textDn = {read = get_textDn};
  __property   long            linkId = {read = get_linkId};
  __property   long            typeVal = {read = get_typeVal};
};
// *********************************************************************//
// Interface: ksSpcStyleSectionParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE96-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksSpcStyleSectionParam : public TDispWrapper<IDispatch>
{
  BSTR __fastcall get_sectionName()
  {
    _TDispID _dispid(/* sectionName */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_number()
  {
    _TDispID _dispid(/* number */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_sortColumnType()
  {
    _TDispID _dispid(/* sortColumnType */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_sortIspoln()
  {
    _TDispID _dispid(/* sortIspoln */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  short __fastcall get_dataType()
  {
    _TDispID _dispid(/* dataType */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_sortType()
  {
    _TDispID _dispid(/* sortType */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetArrColumn()
  {
    _TDispID _dispid(/* GetArrColumn */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetArrAdditionalColumn()
  {
    _TDispID _dispid(/* GetArrAdditionalColumn */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            sectionName = {read = get_sectionName};
  __property   long            number = {read = get_number};
  __property   long            sortColumnType = {read = get_sortColumnType};
  __property   long            sortIspoln = {read = get_sortIspoln};
  __property   short           dataType = {read = get_dataType};
  __property   long            sortType = {read = get_sortType};
};
// *********************************************************************//
// Interface: ksSpcSubSectionParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE99-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksSpcSubSectionParam : public TDispWrapper<IDispatch>
{
  BSTR __fastcall get_name()
  {
    _TDispID _dispid(/* name */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_number()
  {
    _TDispID _dispid(/* number */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            name = {read = get_name};
  __property   long            number = {read = get_number};
};
// *********************************************************************//
// Interface: ksSpcTuningSectionParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE9C-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksSpcTuningSectionParam : public TDispWrapper<IDispatch>
{
  short __fastcall get_subsectionOn()
  {
    _TDispID _dispid(/* subsectionOn */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  short __fastcall get_geometryOn()
  {
    _TDispID _dispid(/* geometryOn */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  short __fastcall get_positionOn()
  {
    _TDispID _dispid(/* positionOn */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  short __fastcall get_sortOn()
  {
    _TDispID _dispid(/* sortOn */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  short __fastcall get_firstOnSheet()
  {
    _TDispID _dispid(/* firstOnSheet */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_rezervCount()
  {
    _TDispID _dispid(/* rezervCount */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_number()
  {
    _TDispID _dispid(/* number */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetArrSubSection()
  {
    _TDispID _dispid(/* GetArrSubSection */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           subsectionOn = {read = get_subsectionOn};
  __property   short           geometryOn = {read = get_geometryOn};
  __property   short           positionOn = {read = get_positionOn};
  __property   short           sortOn = {read = get_sortOn};
  __property   short           firstOnSheet = {read = get_firstOnSheet};
  __property   long            rezervCount = {read = get_rezervCount};
  __property   long            number = {read = get_number};
};
// *********************************************************************//
// Interface: ksSpcTuningStyleParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE9F-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksSpcTuningStyleParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_grToSP(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* grToSP */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_grToSP()
  {
    _TDispID _dispid(/* grToSP */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_zoneCalc(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* zoneCalc */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_zoneCalc()
  {
    _TDispID _dispid(/* zoneCalc */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_showSectionName(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* showSectionName */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_showSectionName()
  {
    _TDispID _dispid(/* showSectionName */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_positionCalc(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* positionCalc */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_positionCalc()
  {
    _TDispID _dispid(/* positionCalc */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_geometryDel(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* geometryDel */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_geometryDel()
  {
    _TDispID _dispid(/* geometryDel */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_positionDel(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* positionDel */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_positionDel()
  {
    _TDispID _dispid(/* positionDel */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_massCalc(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* massCalc */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_massCalc()
  {
    _TDispID _dispid(/* massCalc */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_disableEmptyStr(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* disableEmptyStr */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_disableEmptyStr()
  {
    _TDispID _dispid(/* disableEmptyStr */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_insertNull(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* insertNull */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_insertNull()
  {
    _TDispID _dispid(/* insertNull */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_insertDash(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* insertDash */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_insertDash()
  {
    _TDispID _dispid(/* insertDash */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_disableEmptyBlockStr(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* disableEmptyBlockStr */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_disableEmptyBlockStr()
  {
    _TDispID _dispid(/* disableEmptyBlockStr */ DISPID(11));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_showInfoByDetBlock(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* showInfoByDetBlock */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_showInfoByDetBlock()
  {
    _TDispID _dispid(/* showInfoByDetBlock */ DISPID(12));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ispolnOn(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* ispolnOn */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_ispolnOn()
  {
    _TDispID _dispid(/* ispolnOn */ DISPID(13));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ispolnMarkFull(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* ispolnMarkFull */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_ispolnMarkFull()
  {
    _TDispID _dispid(/* ispolnMarkFull */ DISPID(14));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_blocOnNewPage(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* blocOnNewPage */ DISPID(15));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_blocOnNewPage()
  {
    _TDispID _dispid(/* blocOnNewPage */ DISPID(15));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_userTextStyle(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* userTextStyle */ DISPID(16));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_userTextStyle()
  {
    _TDispID _dispid(/* userTextStyle */ DISPID(16));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_countIspoln(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* countIspoln */ DISPID(17));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_countIspoln()
  {
    _TDispID _dispid(/* countIspoln */ DISPID(17));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_countBlock(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* countBlock */ DISPID(18));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_countBlock()
  {
    _TDispID _dispid(/* countBlock */ DISPID(18));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_predefinedTextFileName(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* predefinedTextFileName */ DISPID(19));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_predefinedTextFileName()
  {
    _TDispID _dispid(/* predefinedTextFileName */ DISPID(19));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_delSpcObjOnDelGeometry(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* delSpcObjOnDelGeometry */ DISPID(29));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_delSpcObjOnDelGeometry()
  {
    _TDispID _dispid(/* delSpcObjOnDelGeometry */ DISPID(29));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_copySpcObjOnCopyGeometry(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* copySpcObjOnCopyGeometry */ DISPID(30));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_copySpcObjOnCopyGeometry()
  {
    _TDispID _dispid(/* copySpcObjOnCopyGeometry */ DISPID(30));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSectionTextStyleFirst()
  {
    _TDispID _dispid(/* GetSectionTextStyleFirst */ DISPID(20));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSectionTextStyleNext()
  {
    _TDispID _dispid(/* GetSectionTextStyleNext */ DISPID(21));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetObjectTextStyle()
  {
    _TDispID _dispid(/* GetObjectTextStyle */ DISPID(22));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetArrSection()
  {
    _TDispID _dispid(/* GetArrSection */ DISPID(23));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(24));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSectionTextStyleFirst(LPDISPATCH style)
  {
    _TDispID _dispid(/* SetSectionTextStyleFirst */ DISPID(25));
    TAutoArgs<1> _args;
    _args[1] = style /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSectionTextStyleNext(LPDISPATCH style)
  {
    _TDispID _dispid(/* SetSectionTextStyleNext */ DISPID(26));
    TAutoArgs<1> _args;
    _args[1] = style /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetObjectTextStyle(LPDISPATCH style)
  {
    _TDispID _dispid(/* SetObjectTextStyle */ DISPID(27));
    TAutoArgs<1> _args;
    _args[1] = style /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetArrSection(LPDISPATCH arr)
  {
    _TDispID _dispid(/* SetArrSection */ DISPID(28));
    TAutoArgs<1> _args;
    _args[1] = arr /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           grToSP = {read = get_grToSP, write = set_grToSP};
  __property   short           zoneCalc = {read = get_zoneCalc, write = set_zoneCalc};
  __property   short           showSectionName = {read = get_showSectionName, write = set_showSectionName};
  __property   short           positionCalc = {read = get_positionCalc, write = set_positionCalc};
  __property   short           geometryDel = {read = get_geometryDel, write = set_geometryDel};
  __property   short           positionDel = {read = get_positionDel, write = set_positionDel};
  __property   short           massCalc = {read = get_massCalc, write = set_massCalc};
  __property   short           disableEmptyStr = {read = get_disableEmptyStr, write = set_disableEmptyStr};
  __property   short           insertNull = {read = get_insertNull, write = set_insertNull};
  __property   short           insertDash = {read = get_insertDash, write = set_insertDash};
  __property   short           disableEmptyBlockStr = {read = get_disableEmptyBlockStr, write = set_disableEmptyBlockStr};
  __property   short           showInfoByDetBlock = {read = get_showInfoByDetBlock, write = set_showInfoByDetBlock};
  __property   short           ispolnOn = {read = get_ispolnOn, write = set_ispolnOn};
  __property   short           ispolnMarkFull = {read = get_ispolnMarkFull, write = set_ispolnMarkFull};
  __property   short           blocOnNewPage = {read = get_blocOnNewPage, write = set_blocOnNewPage};
  __property   short           userTextStyle = {read = get_userTextStyle, write = set_userTextStyle};
  __property   short           countIspoln = {read = get_countIspoln, write = set_countIspoln};
  __property   short           countBlock = {read = get_countBlock, write = set_countBlock};
  __property   BSTR            predefinedTextFileName = {read = get_predefinedTextFileName, write = set_predefinedTextFileName};
  __property   short           delSpcObjOnDelGeometry = {read = get_delSpcObjOnDelGeometry, write = set_delSpcObjOnDelGeometry};
  __property   short           copySpcObjOnCopyGeometry = {read = get_copySpcObjOnCopyGeometry, write = set_copySpcObjOnCopyGeometry};
};
// *********************************************************************//
// Interface: ksSpcStyleParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CEA2-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksSpcStyleParam : public TDispWrapper<IDispatch>
{
  BSTR __fastcall get_layoutName1()
  {
    _TDispID _dispid(/* layoutName1 */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall get_layoutName2()
  {
    _TDispID _dispid(/* layoutName2 */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_shtType1()
  {
    _TDispID _dispid(/* shtType1 */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_shtType2()
  {
    _TDispID _dispid(/* shtType2 */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  short __fastcall get_variant()
  {
    _TDispID _dispid(/* variant */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  short __fastcall get_sectionOn()
  {
    _TDispID _dispid(/* sectionOn */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  short __fastcall get_type()
  {
    _TDispID _dispid(/* type */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetTuning()
  {
    _TDispID _dispid(/* GetTuning */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetArrColumn()
  {
    _TDispID _dispid(/* GetArrColumn */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetArrAdditionalColumn()
  {
    _TDispID _dispid(/* GetArrAdditionalColumn */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetArrSection()
  {
    _TDispID _dispid(/* GetArrSection */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSheetParam()
  {
    _TDispID _dispid(/* GetSheetParam */ DISPID(12));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(13));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            layoutName1 = {read = get_layoutName1};
  __property   BSTR            layoutName2 = {read = get_layoutName2};
  __property   long            shtType1 = {read = get_shtType1};
  __property   long            shtType2 = {read = get_shtType2};
  __property   short           variant = {read = get_variant};
  __property   short           sectionOn = {read = get_sectionOn};
  __property   short           type = {read = get_type};
};
// *********************************************************************//
// Interface: ksSpcDescrParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CEA5-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksSpcDescrParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_layoutName(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* layoutName */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_layoutName()
  {
    _TDispID _dispid(/* layoutName */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_styleId(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* styleId */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_styleId()
  {
    _TDispID _dispid(/* styleId */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_spcName(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* spcName */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_spcName()
  {
    _TDispID _dispid(/* spcName */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            layoutName = {read = get_layoutName, write = set_layoutName};
  __property   long            styleId = {read = get_styleId, write = set_styleId};
  __property   BSTR            spcName = {read = get_spcName, write = set_spcName};
};
// *********************************************************************//
// Interface: ksDocAttachedSpcParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CEA8-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksDocAttachedSpcParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_fileName(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* fileName */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_fileName()
  {
    _TDispID _dispid(/* fileName */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_comment(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* comment */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_comment()
  {
    _TDispID _dispid(/* comment */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_transmit(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* transmit */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_transmit()
  {
    _TDispID _dispid(/* transmit */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            fileName = {read = get_fileName, write = set_fileName};
  __property   BSTR            comment = {read = get_comment, write = set_comment};
  __property   short           transmit = {read = get_transmit, write = set_transmit};
};
// *********************************************************************//
// Interface: ksSpcObjParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CEAB-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksSpcObjParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_blockNumber(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* blockNumber */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_blockNumber()
  {
    _TDispID _dispid(/* blockNumber */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_numbSubSection(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* numbSubSection */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_numbSubSection()
  {
    _TDispID _dispid(/* numbSubSection */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_firstOnSheet(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* firstOnSheet */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_firstOnSheet()
  {
    _TDispID _dispid(/* firstOnSheet */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_posInc(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* posInc */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_posInc()
  {
    _TDispID _dispid(/* posInc */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_draw(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* draw */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_draw()
  {
    _TDispID _dispid(/* draw */ DISPID(12));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_posNotDraw(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* posNotDraw */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_posNotDraw()
  {
    _TDispID _dispid(/* posNotDraw */ DISPID(13));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ispoln(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* ispoln */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_ispoln()
  {
    _TDispID _dispid(/* ispoln */ DISPID(14));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetDocArr()
  {
    _TDispID _dispid(/* GetDocArr */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetDocArr(LPDISPATCH docArr)
  {
    _TDispID _dispid(/* SetDocArr */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = docArr /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_typeObj()
  {
    _TDispID _dispid(/* typeObj */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_numbSection()
  {
    _TDispID _dispid(/* numbSection */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall get_subSectionName()
  {
    _TDispID _dispid(/* subSectionName */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  short __fastcall get_insFrgType()
  {
    _TDispID _dispid(/* insFrgType */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  short __fastcall get_First()
  {
    _TDispID _dispid(/* First */ DISPID(11));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(15));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            blockNumber = {read = get_blockNumber, write = set_blockNumber};
  __property   long            numbSubSection = {read = get_numbSubSection, write = set_numbSubSection};
  __property   short           firstOnSheet = {read = get_firstOnSheet, write = set_firstOnSheet};
  __property   short           posInc = {read = get_posInc, write = set_posInc};
  __property   short           draw = {read = get_draw, write = set_draw};
  __property   short           posNotDraw = {read = get_posNotDraw, write = set_posNotDraw};
  __property   short           ispoln = {read = get_ispoln, write = set_ispoln};
  __property   long            typeObj = {read = get_typeObj};
  __property   long            numbSection = {read = get_numbSection};
  __property   BSTR            subSectionName = {read = get_subSectionName};
  __property   short           insFrgType = {read = get_insFrgType};
  __property   short           First = {read = get_First};
};
// *********************************************************************//
// Interface: ksLibStyle
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CEAE-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksLibStyle : public TDispWrapper<IDispatch>
{
  void __fastcall set_fileName(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* fileName */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_fileName()
  {
    _TDispID _dispid(/* fileName */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_styleNumber(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* styleNumber */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_styleNumber()
  {
    _TDispID _dispid(/* styleNumber */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_typeAllocation(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* typeAllocation */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_typeAllocation()
  {
    _TDispID _dispid(/* typeAllocation */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            fileName = {read = get_fileName, write = set_fileName};
  __property   long            styleNumber = {read = get_styleNumber, write = set_styleNumber};
  __property   short           typeAllocation = {read = get_typeAllocation, write = set_typeAllocation};
};
// *********************************************************************//
// Interface: ksDataBaseObject
// Flags:     (4096) Dispatchable
// GUID:      {0981CD01-9A49-11D6-8732-00C0262CDD2C}
// *********************************************************************//
interface ksDataBaseObject : public TDispWrapper<IDispatch>
{
  long __fastcall ksRelation(long db)
  {
    _TDispID _dispid(/* ksRelation */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = db /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksEndRelation()
  {
    _TDispID _dispid(/* ksEndRelation */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCreateDB(BSTR typeBD)
  {
    _TDispID _dispid(/* ksCreateDB */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = typeBD /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDeleteDB(long db)
  {
    _TDispID _dispid(/* ksDeleteDB */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = db /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksConnectDB(long db, BSTR DBName)
  {
    _TDispID _dispid(/* ksConnectDB */ DISPID(5));
    TAutoArgs<2> _args;
    _args[1] = db /*[VT_I4:0]*/;
    _args[2] = DBName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDisconnectDB(long db)
  {
    _TDispID _dispid(/* ksDisconnectDB */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = db /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksFreeStatement(long db, long r, long fOption)
  {
    _TDispID _dispid(/* ksFreeStatement */ DISPID(7));
    TAutoArgs<3> _args;
    _args[1] = db /*[VT_I4:0]*/;
    _args[2] = r /*[VT_I4:0]*/;
    _args[3] = fOption /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDoStatement(long db, long r, BSTR stSQL)
  {
    _TDispID _dispid(/* ksDoStatement */ DISPID(8));
    TAutoArgs<3> _args;
    _args[1] = db /*[VT_I4:0]*/;
    _args[2] = r /*[VT_I4:0]*/;
    _args[3] = stSQL /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksReadRecord(long db, long r, LPDISPATCH userPars)
  {
    _TDispID _dispid(/* ksReadRecord */ DISPID(9));
    TAutoArgs<3> _args;
    _args[1] = db /*[VT_I4:0]*/;
    _args[2] = r /*[VT_I4:0]*/;
    _args[3] = userPars /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCondition(long db, long r, BSTR stSQL)
  {
    _TDispID _dispid(/* ksCondition */ DISPID(10));
    TAutoArgs<3> _args;
    _args[1] = db /*[VT_I4:0]*/;
    _args[2] = r /*[VT_I4:0]*/;
    _args[3] = stSQL /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksRDouble(BSTR name)
  {
    _TDispID _dispid(/* ksRDouble */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = name /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksRFloat(BSTR name)
  {
    _TDispID _dispid(/* ksRFloat */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = name /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksRInt(BSTR name)
  {
    _TDispID _dispid(/* ksRInt */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = name /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksRLong(BSTR name)
  {
    _TDispID _dispid(/* ksRLong */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = name /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksRChar(BSTR name, long size, long type)
  {
    _TDispID _dispid(/* ksRChar */ DISPID(15));
    TAutoArgs<3> _args;
    _args[1] = name /*[VT_BSTR:0]*/;
    _args[2] = size /*[VT_I4:0]*/;
    _args[3] = type /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksOpenTextFile(BSTR fileName)
  {
    _TDispID _dispid(/* ksOpenTextFile */ DISPID(16));
    TAutoArgs<1> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksCloseTextFile(long F)
  {
    _TDispID _dispid(/* ksCloseTextFile */ DISPID(17));
    TAutoArgs<1> _args;
    _args[1] = F /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksReadStrFrFile(long F, long* res, long numb)
  {
    _TDispID _dispid(/* ksReadStrFrFile */ DISPID(18));
    TAutoArgs<3> _args;
    _args[1] = F /*[VT_I4:0]*/;
    _args[2] = res /*[VT_I4:1]*/;
    _args[3] = numb /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksGetTableName(long db, long* res, BSTR firstOrNext)
  {
    _TDispID _dispid(/* ksGetTableName */ DISPID(19));
    TAutoArgs<3> _args;
    _args[1] = db /*[VT_I4:0]*/;
    _args[2] = res /*[VT_I4:1]*/;
    _args[3] = firstOrNext /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksGetColumnName(long db, BSTR tableName, long* res, BSTR firstOrNext)
  {
    _TDispID _dispid(/* ksGetColumnName */ DISPID(20));
    TAutoArgs<4> _args;
    _args[1] = db /*[VT_I4:0]*/;
    _args[2] = tableName /*[VT_BSTR:0]*/;
    _args[3] = res /*[VT_I4:1]*/;
    _args[4] = firstOrNext /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksIsODBCOkey()
  {
    _TDispID _dispid(/* ksIsODBCOkey */ DISPID(21));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksRCharW(BSTR name, long size, long type)
  {
    _TDispID _dispid(/* ksRCharW */ DISPID(22));
    TAutoArgs<3> _args;
    _args[1] = name /*[VT_BSTR:0]*/;
    _args[2] = size /*[VT_I4:0]*/;
    _args[3] = type /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksOpenTextFileEx(BSTR fileName, long textFileType)
  {
    _TDispID _dispid(/* ksOpenTextFileEx */ DISPID(23));
    TAutoArgs<2> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = textFileType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksSpcDocumentNotify
// Flags:     (4096) Dispatchable
// GUID:      {1BD030F4-4058-4A86-9F4F-1AEEF8BE8D23}
// *********************************************************************//
interface ksSpcDocumentNotify : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall DocumentBeginAdd()
  {
    _TDispID _dispid(/* DocumentBeginAdd */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DocumentAdd(BSTR docName)
  {
    _TDispID _dispid(/* DocumentAdd */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = docName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DocumentBeginRemove(BSTR docName)
  {
    _TDispID _dispid(/* DocumentBeginRemove */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = docName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DocumentRemove(BSTR docName)
  {
    _TDispID _dispid(/* DocumentRemove */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = docName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SpcStyleBeginChange(BSTR libName, long numb)
  {
    _TDispID _dispid(/* SpcStyleBeginChange */ DISPID(5));
    TAutoArgs<2> _args;
    _args[1] = libName /*[VT_BSTR:0]*/;
    _args[2] = numb /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SpcStyleChange(BSTR libName, long numb)
  {
    _TDispID _dispid(/* SpcStyleChange */ DISPID(6));
    TAutoArgs<2> _args;
    _args[1] = libName /*[VT_BSTR:0]*/;
    _args[2] = numb /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksSpcDocument
// Flags:     (4096) Dispatchable
// GUID:      {51E74521-9A3A-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksSpcDocument : public TDispWrapper<IDispatch>
{
  void __fastcall set_reference(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* reference */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_reference()
  {
    _TDispID _dispid(/* reference */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetStamp()
  {
    _TDispID _dispid(/* GetStamp */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSpecification()
  {
    _TDispID _dispid(/* GetSpecification */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksCloseDocument()
  {
    _TDispID _dispid(/* ksCloseDocument */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ksGetSpcSheetSB()
  {
    _TDispID _dispid(/* ksGetSpcSheetSB */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetSpcDocumentPagesCount()
  {
    _TDispID _dispid(/* ksGetSpcDocumentPagesCount */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksSaveDocument(BSTR fileName)
  {
    _TDispID _dispid(/* ksSaveDocument */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksCreateDocument(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksCreateDocument */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDeleteObj(long ref)
  {
    _TDispID _dispid(/* ksDeleteObj */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = ref /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetSpcSheetSB(LPDISPATCH arr)
  {
    _TDispID _dispid(/* ksSetSpcSheetSB */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = arr /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksExistObj(long ref)
  {
    _TDispID _dispid(/* ksExistObj */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = ref /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksOpenDocument(BSTR nameDoc, short regim)
  {
    _TDispID _dispid(/* ksOpenDocument */ DISPID(12));
    TAutoArgs<2> _args;
    _args[1] = nameDoc /*[VT_BSTR:0]*/;
    _args[2] = regim /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetObjParam(long ref, LPDISPATCH param, long parType/*[def,opt]*/)
  {
    _TDispID _dispid(/* ksGetObjParam */ DISPID(13));
    TAutoArgs<3> _args;
    _args[1] = ref /*[VT_I4:0]*/;
    _args[2] = param /*[VT_DISPATCH:0]*/;
    _args[3] = parType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetObjParam(long ref, LPDISPATCH param, long parType/*[def,opt]*/)
  {
    _TDispID _dispid(/* ksSetObjParam */ DISPID(14));
    TAutoArgs<3> _args;
    _args[1] = ref /*[VT_I4:0]*/;
    _args[2] = param /*[VT_DISPATCH:0]*/;
    _args[3] = parType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SaveAsToRasterFormat(BSTR fileName, LPDISPATCH par)
  {
    _TDispID _dispid(/* SaveAsToRasterFormat */ DISPID(15));
    TAutoArgs<2> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall RasterFormatParam()
  {
    _TDispID _dispid(/* RasterFormatParam */ DISPID(16));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SaveAsToUncompressedRasterFormat(BSTR fileName, LPDISPATCH rasterPar)
  {
    _TDispID _dispid(/* SaveAsToUncompressedRasterFormat */ DISPID(17));
    TAutoArgs<2> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = rasterPar /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  Kompas6api5_tlb::SpcDocumentNotifyPtr __fastcall GetSpcDocumentNotify()
  {
    _TDispID _dispid(/* GetSpcDocumentNotify */ DISPID(18));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return Kompas6api5_tlb::SpcDocumentNotifyPtr( (LPUNKNOWN) /*[VT_UNKNOWN:1]*/_args.GetRetVariant(), false );
  }

  TOLEBOOL __fastcall ksSaveDocumentEx(BSTR fileName, long SaveMode)
  {
    _TDispID _dispid(/* ksSaveDocumentEx */ DISPID(19));
    TAutoArgs<2> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = SaveMode /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetStampEx(long SheetNumb)
  {
    _TDispID _dispid(/* GetStampEx */ DISPID(20));
    TAutoArgs<1> _args;
    _args[1] = SheetNumb /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksSaveToDXF(BSTR DXFFileName)
  {
    _TDispID _dispid(/* ksSaveToDXF */ DISPID(21));
    TAutoArgs<1> _args;
    _args[1] = DXFFileName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            reference = {read = get_reference, write = set_reference};
};
// *********************************************************************//
// Interface: ksSpcObjectNotify
// Flags:     (4096) Dispatchable
// GUID:      {AC5004D1-C240-41FC-AB84-7EB5C793AE7F}
// *********************************************************************//
interface ksSpcObjectNotify : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall BeginDelete(long objRef)
  {
    _TDispID _dispid(/* BeginDelete */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Delete(long objRef)
  {
    _TDispID _dispid(/* Delete */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall CellDblClick(long objRef, long number)
  {
    _TDispID _dispid(/* CellDblClick */ DISPID(3));
    TAutoArgs<2> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    _args[2] = number /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall CellBeginEdit(long objRef, long number)
  {
    _TDispID _dispid(/* CellBeginEdit */ DISPID(4));
    TAutoArgs<2> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    _args[2] = number /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ChangeCurrent(long objRef)
  {
    _TDispID _dispid(/* ChangeCurrent */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DocumentBeginAdd(long objRef)
  {
    _TDispID _dispid(/* DocumentBeginAdd */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DocumentAdd(long objRef, BSTR docName)
  {
    _TDispID _dispid(/* DocumentAdd */ DISPID(7));
    TAutoArgs<2> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    _args[2] = docName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DocumentRemove(long objRef, BSTR docName)
  {
    _TDispID _dispid(/* DocumentRemove */ DISPID(8));
    TAutoArgs<2> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    _args[2] = docName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginGeomChange(long objRef)
  {
    _TDispID _dispid(/* BeginGeomChange */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GeomChange(long objRef)
  {
    _TDispID _dispid(/* GeomChange */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginProcess(long pType, long objRef)
  {
    _TDispID _dispid(/* BeginProcess */ DISPID(11));
    TAutoArgs<2> _args;
    _args[1] = pType /*[VT_I4:0]*/;
    _args[2] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall EndProcess(long pType)
  {
    _TDispID _dispid(/* EndProcess */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = pType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall CreateObject(long objRef)
  {
    _TDispID _dispid(/* CreateObject */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall UpdateObject(long objRef)
  {
    _TDispID _dispid(/* UpdateObject */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginCopy(long objRef)
  {
    _TDispID _dispid(/* BeginCopy */ DISPID(15));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall copy(long objRef)
  {
    _TDispID _dispid(/* copy */ DISPID(16));
    TAutoArgs<1> _args;
    _args[1] = objRef /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksSpecificationNotify
// Flags:     (4096) Dispatchable
// GUID:      {0331AB4B-F25B-4EB9-9C8A-BFEA414E3822}
// *********************************************************************//
interface ksSpecificationNotify : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall TuningSpcStyleBeginChange(BSTR libName, long numb)
  {
    _TDispID _dispid(/* TuningSpcStyleBeginChange */ DISPID(1));
    TAutoArgs<2> _args;
    _args[1] = libName /*[VT_BSTR:0]*/;
    _args[2] = numb /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall TuningSpcStyleChange(BSTR libName, long numb, TOLEBOOL isOk)
  {
    _TDispID _dispid(/* TuningSpcStyleChange */ DISPID(2));
    TAutoArgs<3> _args;
    _args[1] = libName /*[VT_BSTR:0]*/;
    _args[2] = numb /*[VT_I4:0]*/;
    _args[3] = isOk /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ChangeCurrentSpcDescription(BSTR libName, long numb)
  {
    _TDispID _dispid(/* ChangeCurrentSpcDescription */ DISPID(3));
    TAutoArgs<2> _args;
    _args[1] = libName /*[VT_BSTR:0]*/;
    _args[2] = numb /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SpcDescriptionAdd(BSTR libName, long numb)
  {
    _TDispID _dispid(/* SpcDescriptionAdd */ DISPID(4));
    TAutoArgs<2> _args;
    _args[1] = libName /*[VT_BSTR:0]*/;
    _args[2] = numb /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SpcDescriptionRemove(BSTR libName, long numb)
  {
    _TDispID _dispid(/* SpcDescriptionRemove */ DISPID(5));
    TAutoArgs<2> _args;
    _args[1] = libName /*[VT_BSTR:0]*/;
    _args[2] = numb /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SpcDescriptionBeginEdit(BSTR libName, long numb)
  {
    _TDispID _dispid(/* SpcDescriptionBeginEdit */ DISPID(6));
    TAutoArgs<2> _args;
    _args[1] = libName /*[VT_BSTR:0]*/;
    _args[2] = numb /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SpcDescriptionEdit(BSTR libName, long numb, TOLEBOOL isOk)
  {
    _TDispID _dispid(/* SpcDescriptionEdit */ DISPID(7));
    TAutoArgs<3> _args;
    _args[1] = libName /*[VT_BSTR:0]*/;
    _args[2] = numb /*[VT_I4:0]*/;
    _args[3] = isOk /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SynchronizationBegin()
  {
    _TDispID _dispid(/* SynchronizationBegin */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Synchronization()
  {
    _TDispID _dispid(/* Synchronization */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginCalcPositions()
  {
    _TDispID _dispid(/* BeginCalcPositions */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall CalcPositions()
  {
    _TDispID _dispid(/* CalcPositions */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginCreateObject(long typeObj)
  {
    _TDispID _dispid(/* BeginCreateObject */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = typeObj /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksSpecification
// Flags:     (4096) Dispatchable
// GUID:      {51E74524-9A3A-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksSpecification : public TDispWrapper<IDispatch>
{
  long __fastcall ksSpcObjectEnd()
  {
    _TDispID _dispid(/* ksSpcObjectEnd */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSpcObjectEdit(long spcObj)
  {
    _TDispID _dispid(/* ksSpcObjectEdit */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = spcObj /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSpcObjectCreate(BSTR nameLib, long styleNumb, long secNumb, long subSecNumb, 
                                    double numb, short typeObj)
  {
    _TDispID _dispid(/* ksSpcObjectCreate */ DISPID(3));
    TAutoArgs<6> _args;
    _args[1] = nameLib /*[VT_BSTR:0]*/;
    _args[2] = styleNumb /*[VT_I4:0]*/;
    _args[3] = secNumb /*[VT_I4:0]*/;
    _args[4] = subSecNumb /*[VT_I4:0]*/;
    _args[5] = numb /*[VT_R8:0]*/;
    _args[6] = typeObj /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSpcChangeValue(long colNumb, long itemNumb, LPDISPATCH userPars, short typeVal)
  {
    _TDispID _dispid(/* ksSpcChangeValue */ DISPID(4));
    TAutoArgs<4> _args;
    _args[1] = colNumb /*[VT_I4:0]*/;
    _args[2] = itemNumb /*[VT_I4:0]*/;
    _args[3] = userPars /*[VT_DISPATCH:0]*/;
    _args[4] = typeVal /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSpcVisible(long colNumb, long itemNumb, short flagOn)
  {
    _TDispID _dispid(/* ksSpcVisible */ DISPID(5));
    TAutoArgs<3> _args;
    _args[1] = colNumb /*[VT_I4:0]*/;
    _args[2] = itemNumb /*[VT_I4:0]*/;
    _args[3] = flagOn /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSpcMassa(BSTR sMassa)
  {
    _TDispID _dispid(/* ksSpcMassa */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = sMassa /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSpcCount(short ispoln, BSTR sCount)
  {
    _TDispID _dispid(/* ksSpcCount */ DISPID(7));
    TAutoArgs<2> _args;
    _args[1] = ispoln /*[VT_I2:0]*/;
    _args[2] = sCount /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSpcPosition(long pos)
  {
    _TDispID _dispid(/* ksSpcPosition */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = pos /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSpcIncludeReference(long obj, short Clear)
  {
    _TDispID _dispid(/* ksSpcIncludeReference */ DISPID(9));
    TAutoArgs<2> _args;
    _args[1] = obj /*[VT_I4:0]*/;
    _args[2] = Clear /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetSpcObjForGeom(BSTR nameLib, long numb, long obj, short equal, short First)
  {
    _TDispID _dispid(/* ksGetSpcObjForGeom */ DISPID(10));
    TAutoArgs<5> _args;
    _args[1] = nameLib /*[VT_BSTR:0]*/;
    _args[2] = numb /*[VT_I4:0]*/;
    _args[3] = obj /*[VT_I4:0]*/;
    _args[4] = equal /*[VT_I2:0]*/;
    _args[5] = First /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetSpcObjForGeomWithLimit(BSTR nameLib, long numb, long obj, short equal, 
                                              short First, long section, double attrTypeNumb)
  {
    _TDispID _dispid(/* ksGetSpcObjForGeomWithLimit */ DISPID(11));
    TAutoArgs<7> _args;
    _args[1] = nameLib /*[VT_BSTR:0]*/;
    _args[2] = numb /*[VT_I4:0]*/;
    _args[3] = obj /*[VT_I4:0]*/;
    _args[4] = equal /*[VT_I2:0]*/;
    _args[5] = First /*[VT_I2:0]*/;
    _args[6] = section /*[VT_I4:0]*/;
    _args[7] = attrTypeNumb /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksGetSpcSectionName(long spcObj)
  {
    _TDispID _dispid(/* ksGetSpcSectionName */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = spcObj /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksEditWindowSpcObject(long obj)
  {
    _TDispID _dispid(/* ksEditWindowSpcObject */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksGetSpcObjectNumber(long spcObj)
  {
    _TDispID _dispid(/* ksGetSpcObjectNumber */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = spcObj /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetSpcObject(double objNumb)
  {
    _TDispID _dispid(/* ksGetSpcObject */ DISPID(15));
    TAutoArgs<1> _args;
    _args[1] = objNumb /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksGetSpcObjectColumnText(long spcObj, long columnType, long ispoln, long block)
  {
    _TDispID _dispid(/* ksGetSpcObjectColumnText */ DISPID(16));
    TAutoArgs<4> _args;
    _args[1] = spcObj /*[VT_I4:0]*/;
    _args[2] = columnType /*[VT_I4:0]*/;
    _args[3] = ispoln /*[VT_I4:0]*/;
    _args[4] = block /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetSpcObjectColumnText(long columnType, long ispoln, long block, BSTR str)
  {
    _TDispID _dispid(/* ksSetSpcObjectColumnText */ DISPID(17));
    TAutoArgs<4> _args;
    _args[1] = columnType /*[VT_I4:0]*/;
    _args[2] = ispoln /*[VT_I4:0]*/;
    _args[3] = block /*[VT_I4:0]*/;
    _args[4] = str /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetSpcTableColumn(BSTR nameLib, long numb, short additioanalCol)
  {
    _TDispID _dispid(/* ksGetSpcTableColumn */ DISPID(18));
    TAutoArgs<3> _args;
    _args[1] = nameLib /*[VT_BSTR:0]*/;
    _args[2] = numb /*[VT_I4:0]*/;
    _args[3] = additioanalCol /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetSpcColumnType(long spcObj, long colNumb, LPDISPATCH par)
  {
    _TDispID _dispid(/* ksGetSpcColumnType */ DISPID(19));
    TAutoArgs<3> _args;
    _args[1] = spcObj /*[VT_I4:0]*/;
    _args[2] = colNumb /*[VT_I4:0]*/;
    _args[3] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetSpcColumnNumb(long spcObj, long columnType, long ispoln, long block)
  {
    _TDispID _dispid(/* ksGetSpcColumnNumb */ DISPID(20));
    TAutoArgs<4> _args;
    _args[1] = spcObj /*[VT_I4:0]*/;
    _args[2] = columnType /*[VT_I4:0]*/;
    _args[3] = ispoln /*[VT_I4:0]*/;
    _args[4] = block /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetSpcStyleParam(BSTR nameLib, long numb, LPDISPATCH par, long tPar)
  {
    _TDispID _dispid(/* ksGetSpcStyleParam */ DISPID(21));
    TAutoArgs<4> _args;
    _args[1] = nameLib /*[VT_BSTR:0]*/;
    _args[2] = numb /*[VT_I4:0]*/;
    _args[3] = par /*[VT_DISPATCH:0]*/;
    _args[4] = tPar /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetSpcDescription(long index, LPDISPATCH param, TOLEBOOL* state)
  {
    _TDispID _dispid(/* ksGetSpcDescription */ DISPID(22));
    TAutoArgs<3> _args;
    _args[1] = index /*[VT_I4:0]*/;
    _args[2] = param /*[VT_DISPATCH:0]*/;
    _args[3] = state /*[VT_BOOL:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetSpcDescription(long index, LPDISPATCH param, short state)
  {
    _TDispID _dispid(/* ksSetSpcDescription */ DISPID(23));
    TAutoArgs<3> _args;
    _args[1] = index /*[VT_I4:0]*/;
    _args[2] = param /*[VT_DISPATCH:0]*/;
    _args[3] = state /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksAddSpcDescription(LPDISPATCH param)
  {
    _TDispID _dispid(/* ksAddSpcDescription */ DISPID(24));
    TAutoArgs<1> _args;
    _args[1] = param /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDeleteSpcDescription(long index)
  {
    _TDispID _dispid(/* ksDeleteSpcDescription */ DISPID(25));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall D3SpcIncludePart(LPDISPATCH part, TOLEBOOL fillTexts)
  {
    _TDispID _dispid(/* D3SpcIncludePart */ DISPID(26));
    TAutoArgs<2> _args;
    _args[1] = part /*[VT_DISPATCH:0]*/;
    _args[2] = fillTexts /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall D3GetSpcObjForGeomWithLimit(BSTR nameLib, long numb, LPDISPATCH part, short First
                                              , short section, double attrTypeNumb)
  {
    _TDispID _dispid(/* D3GetSpcObjForGeomWithLimit */ DISPID(27));
    TAutoArgs<6> _args;
    _args[1] = nameLib /*[VT_BSTR:0]*/;
    _args[2] = numb /*[VT_I4:0]*/;
    _args[3] = part /*[VT_DISPATCH:0]*/;
    _args[4] = First /*[VT_I2:0]*/;
    _args[5] = section /*[VT_I2:0]*/;
    _args[6] = attrTypeNumb /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksGetWidthColumnSpc(long numColumn, TOLEBOOL cellOrText)
  {
    _TDispID _dispid(/* ksGetWidthColumnSpc */ DISPID(28));
    TAutoArgs<2> _args;
    _args[1] = numColumn /*[VT_I4:0]*/;
    _args[2] = cellOrText /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetCurrentSpcObject()
  {
    _TDispID _dispid(/* ksGetCurrentSpcObject */ DISPID(29));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetCurrentSpcObject(long spcObj, long index)
  {
    _TDispID _dispid(/* ksSetCurrentSpcObject */ DISPID(30));
    TAutoArgs<2> _args;
    _args[1] = spcObj /*[VT_I4:0]*/;
    _args[2] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetTuningSpcStyleParam(long index, LPDISPATCH par)
  {
    _TDispID _dispid(/* ksSetTuningSpcStyleParam */ DISPID(31));
    TAutoArgs<2> _args;
    _args[1] = index /*[VT_I4:0]*/;
    _args[2] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetTuningSpcStyleParam(long index, LPDISPATCH par)
  {
    _TDispID _dispid(/* ksGetTuningSpcStyleParam */ DISPID(32));
    TAutoArgs<2> _args;
    _args[1] = index /*[VT_I4:0]*/;
    _args[2] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetSpcObjGeometry(long spcObj)
  {
    _TDispID _dispid(/* ksGetSpcObjGeometry */ DISPID(33));
    TAutoArgs<1> _args;
    _args[1] = spcObj /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall D3GetSpcObjGeometry(long spcObj)
  {
    _TDispID _dispid(/* D3GetSpcObjGeometry */ DISPID(34));
    TAutoArgs<1> _args;
    _args[1] = spcObj /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ksGetSpcObjectColumnTextEx(long spcObj, long columnType, long ispoln, 
                                                   long block)
  {
    _TDispID _dispid(/* ksGetSpcObjectColumnTextEx */ DISPID(35));
    TAutoArgs<4> _args;
    _args[1] = spcObj /*[VT_I4:0]*/;
    _args[2] = columnType /*[VT_I4:0]*/;
    _args[3] = ispoln /*[VT_I4:0]*/;
    _args[4] = block /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetSpcObjectColumnTextEx(long columnType, long ispoln, long block, 
                                             LPDISPATCH arr)
  {
    _TDispID _dispid(/* ksSetSpcObjectColumnTextEx */ DISPID(36));
    TAutoArgs<4> _args;
    _args[1] = columnType /*[VT_I4:0]*/;
    _args[2] = ispoln /*[VT_I4:0]*/;
    _args[3] = block /*[VT_I4:0]*/;
    _args[4] = arr /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  Kompas6api5_tlb::SpcObjectNotifyPtr __fastcall GetSpcObjectNotify(long objType)
  {
    _TDispID _dispid(/* GetSpcObjectNotify */ DISPID(37));
    TAutoArgs<1> _args;
    _args[1] = objType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return Kompas6api5_tlb::SpcObjectNotifyPtr( (LPUNKNOWN) /*[VT_UNKNOWN:1]*/_args.GetRetVariant(), false );
  }

  long __fastcall ksGetSpcObjGeometryEx(long spcObj, long geomMode)
  {
    _TDispID _dispid(/* ksGetSpcObjGeometryEx */ DISPID(38));
    TAutoArgs<2> _args;
    _args[1] = spcObj /*[VT_I4:0]*/;
    _args[2] = geomMode /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksSetSpcObjectColumnTextAlign(long spcObj, long columnNumber, long lineIndex, 
                                                    long align)
  {
    _TDispID _dispid(/* ksSetSpcObjectColumnTextAlign */ DISPID(39));
    TAutoArgs<4> _args;
    _args[1] = spcObj /*[VT_I4:0]*/;
    _args[2] = columnNumber /*[VT_I4:0]*/;
    _args[3] = lineIndex /*[VT_I4:0]*/;
    _args[4] = align /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetSpcObjectColumnTextAlign(long spcObj, long columnNumber, long lineIndex)
  {
    _TDispID _dispid(/* ksGetSpcObjectColumnTextAlign */ DISPID(40));
    TAutoArgs<3> _args;
    _args[1] = spcObj /*[VT_I4:0]*/;
    _args[2] = columnNumber /*[VT_I4:0]*/;
    _args[3] = lineIndex /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksGetSpcObjectAttributeNumber(long spcObj)
  {
    _TDispID _dispid(/* ksGetSpcObjectAttributeNumber */ DISPID(41));
    TAutoArgs<1> _args;
    _args[1] = spcObj /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksSetSpcObjectAttributeNumber(long spcObj, double attrNumber)
  {
    _TDispID _dispid(/* ksSetSpcObjectAttributeNumber */ DISPID(42));
    TAutoArgs<2> _args;
    _args[1] = spcObj /*[VT_I4:0]*/;
    _args[2] = attrNumber /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksGetSpcObjectSummaryCount(long spcObj, long ispoln, long blockNumber)
  {
    _TDispID _dispid(/* ksGetSpcObjectSummaryCount */ DISPID(43));
    TAutoArgs<3> _args;
    _args[1] = spcObj /*[VT_I4:0]*/;
    _args[2] = ispoln /*[VT_I4:0]*/;
    _args[3] = blockNumber /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksSetSpcObjectMaterial(long spcObj, BSTR material, double density)
  {
    _TDispID _dispid(/* ksSetSpcObjectMaterial */ DISPID(44));
    TAutoArgs<3> _args;
    _args[1] = spcObj /*[VT_I4:0]*/;
    _args[2] = material /*[VT_BSTR:0]*/;
    _args[3] = density /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ksGetSpcPerformanceName(long index, long ispoln, long block)
  {
    _TDispID _dispid(/* ksGetSpcPerformanceName */ DISPID(45));
    TAutoArgs<3> _args;
    _args[1] = index /*[VT_I4:0]*/;
    _args[2] = ispoln /*[VT_I4:0]*/;
    _args[3] = block /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksSetSpcPerformanceName(long index, long ispoln, long block, BSTR name)
  {
    _TDispID _dispid(/* ksSetSpcPerformanceName */ DISPID(46));
    TAutoArgs<4> _args;
    _args[1] = index /*[VT_I4:0]*/;
    _args[2] = ispoln /*[VT_I4:0]*/;
    _args[3] = block /*[VT_I4:0]*/;
    _args[4] = name /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksSpcDocLinksClear(long doc)
  {
    _TDispID _dispid(/* ksSpcDocLinksClear */ DISPID(47));
    TAutoArgs<1> _args;
    _args[1] = doc /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksDocumentTxt
// Flags:     (4096) Dispatchable
// GUID:      {74D745F1-9A3A-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksDocumentTxt : public TDispWrapper<IDispatch>
{
  void __fastcall set_reference(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* reference */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_reference()
  {
    _TDispID _dispid(/* reference */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetStamp()
  {
    _TDispID _dispid(/* GetStamp */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksCloseDocument()
  {
    _TDispID _dispid(/* ksCloseDocument */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetTxtDocumentPagesCount()
  {
    _TDispID _dispid(/* ksGetTxtDocumentPagesCount */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksSaveDocument(BSTR fileName)
  {
    _TDispID _dispid(/* ksSaveDocument */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksCreateDocument(LPDISPATCH par)
  {
    _TDispID _dispid(/* ksCreateDocument */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksOpenDocument(BSTR nameDoc, short regim)
  {
    _TDispID _dispid(/* ksOpenDocument */ DISPID(7));
    TAutoArgs<2> _args;
    _args[1] = nameDoc /*[VT_BSTR:0]*/;
    _args[2] = regim /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SaveAsToRasterFormat(BSTR fileName, LPDISPATCH par)
  {
    _TDispID _dispid(/* SaveAsToRasterFormat */ DISPID(8));
    TAutoArgs<2> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = par /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall RasterFormatParam()
  {
    _TDispID _dispid(/* RasterFormatParam */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SaveAsToUncompressedRasterFormat(BSTR fileName, LPDISPATCH rasterPar)
  {
    _TDispID _dispid(/* SaveAsToUncompressedRasterFormat */ DISPID(10));
    TAutoArgs<2> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = rasterPar /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetObjParam(long ref, LPDISPATCH param, long parType/*[def,opt]*/)
  {
    _TDispID _dispid(/* ksGetObjParam */ DISPID(11));
    TAutoArgs<3> _args;
    _args[1] = ref /*[VT_I4:0]*/;
    _args[2] = param /*[VT_DISPATCH:0]*/;
    _args[3] = parType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetObjParam(long ref, LPDISPATCH param, long parType/*[def,opt]*/)
  {
    _TDispID _dispid(/* ksSetObjParam */ DISPID(12));
    TAutoArgs<3> _args;
    _args[1] = ref /*[VT_I4:0]*/;
    _args[2] = param /*[VT_DISPATCH:0]*/;
    _args[3] = parType /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ksSaveDocumentEx(BSTR fileName, long SaveMode)
  {
    _TDispID _dispid(/* ksSaveDocumentEx */ DISPID(13));
    TAutoArgs<2> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    _args[2] = SaveMode /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetStampEx(long SheetNumb)
  {
    _TDispID _dispid(/* GetStampEx */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = SheetNumb /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetDocumentPagesCount()
  {
    _TDispID _dispid(/* ksGetDocumentPagesCount */ DISPID(15));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            reference = {read = get_reference, write = set_reference};
};
// *********************************************************************//
// Interface: ksAttributeTypeParam
// Flags:     (4096) Dispatchable
// GUID:      {CC26DA61-9B22-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksAttributeTypeParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_key1(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* key1 */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_key1()
  {
    _TDispID _dispid(/* key1 */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_key2(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* key2 */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_key2()
  {
    _TDispID _dispid(/* key2 */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_key3(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* key3 */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_key3()
  {
    _TDispID _dispid(/* key3 */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_key4(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* key4 */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_key4()
  {
    _TDispID _dispid(/* key4 */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_rowsCount(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* rowsCount */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_rowsCount()
  {
    _TDispID _dispid(/* rowsCount */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_header(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* header */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_header()
  {
    _TDispID _dispid(/* header */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_flagVisible(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* flagVisible */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_flagVisible()
  {
    _TDispID _dispid(/* flagVisible */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_password(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* password */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_password()
  {
    _TDispID _dispid(/* password */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetColumns()
  {
    _TDispID _dispid(/* GetColumns */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetColumns(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetColumns */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            key1 = {read = get_key1, write = set_key1};
  __property   long            key2 = {read = get_key2, write = set_key2};
  __property   long            key3 = {read = get_key3, write = set_key3};
  __property   long            key4 = {read = get_key4, write = set_key4};
  __property   long            rowsCount = {read = get_rowsCount, write = set_rowsCount};
  __property   BSTR            header = {read = get_header, write = set_header};
  __property   TOLEBOOL        flagVisible = {read = get_flagVisible, write = set_flagVisible};
  __property   BSTR            password = {read = get_password, write = set_password};
};
// *********************************************************************//
// Interface: ksColumnInfoParam
// Flags:     (4096) Dispatchable
// GUID:      {CE0D05E1-9B2A-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksColumnInfoParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_type(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* type */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_type()
  {
    _TDispID _dispid(/* type */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_header(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* header */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_header()
  {
    _TDispID _dispid(/* header */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_key(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* key */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_key()
  {
    _TDispID _dispid(/* key */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_def(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* def */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_def()
  {
    _TDispID _dispid(/* def */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_flagEnum(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* flagEnum */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_flagEnum()
  {
    _TDispID _dispid(/* flagEnum */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetFieldEnum()
  {
    _TDispID _dispid(/* GetFieldEnum */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetFieldEnum(LPDISPATCH fieldEnum)
  {
    _TDispID _dispid(/* SetFieldEnum */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = fieldEnum /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetColumns()
  {
    _TDispID _dispid(/* GetColumns */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetColumns(LPDISPATCH fieldEnum)
  {
    _TDispID _dispid(/* SetColumns */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = fieldEnum /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           type = {read = get_type, write = set_type};
  __property   BSTR            header = {read = get_header, write = set_header};
  __property   short           key = {read = get_key, write = set_key};
  __property   BSTR            def = {read = get_def, write = set_def};
  __property   TOLEBOOL        flagEnum = {read = get_flagEnum, write = set_flagEnum};
};
// *********************************************************************//
// Interface: ksAttributeParam
// Flags:     (4096) Dispatchable
// GUID:      {CE0D05E4-9B2A-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksAttributeParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_key1(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* key1 */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_key1()
  {
    _TDispID _dispid(/* key1 */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_key2(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* key2 */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_key2()
  {
    _TDispID _dispid(/* key2 */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_key3(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* key3 */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_key3()
  {
    _TDispID _dispid(/* key3 */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_key4(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* key4 */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_key4()
  {
    _TDispID _dispid(/* key4 */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_password(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* password */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_password()
  {
    _TDispID _dispid(/* password */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetValues()
  {
    _TDispID _dispid(/* GetValues */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetValues(LPDISPATCH values)
  {
    _TDispID _dispid(/* SetValues */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = values /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetFlagVisible()
  {
    _TDispID _dispid(/* GetFlagVisible */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetFlagVisible(LPDISPATCH flagVisible)
  {
    _TDispID _dispid(/* SetFlagVisible */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = flagVisible /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetColumnKeys()
  {
    _TDispID _dispid(/* GetColumnKeys */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetColumnKeys(LPDISPATCH columnKeys)
  {
    _TDispID _dispid(/* SetColumnKeys */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = columnKeys /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(12));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            key1 = {read = get_key1, write = set_key1};
  __property   long            key2 = {read = get_key2, write = set_key2};
  __property   long            key3 = {read = get_key3, write = set_key3};
  __property   long            key4 = {read = get_key4, write = set_key4};
  __property   BSTR            password = {read = get_password, write = set_password};
};
// *********************************************************************//
// Interface: ksVariable
// Flags:     (4096) Dispatchable
// GUID:      {508A0CC1-9D74-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksVariable : public TDispWrapper<IDispatch>
{
  void __fastcall set_value(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* value */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_value()
  {
    _TDispID _dispid(/* value */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_note(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* note */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_note()
  {
    _TDispID _dispid(/* note */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_Pseudonym(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* Pseudonym */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_Pseudonym()
  {
    _TDispID _dispid(/* Pseudonym */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_Expression(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* Expression */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_Expression()
  {
    _TDispID _dispid(/* Expression */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_external(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* external */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_external()
  {
    _TDispID _dispid(/* external */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_Information(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* Information */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_Information()
  {
    _TDispID _dispid(/* Information */ DISPID(12));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall get_name()
  {
    _TDispID _dispid(/* name */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall get_parameterNote()
  {
    _TDispID _dispid(/* parameterNote */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall get_linkVarName()
  {
    _TDispID _dispid(/* linkVarName */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall get_linkDocName()
  {
    _TDispID _dispid(/* linkDocName */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetLink(BSTR doc, BSTR name)
  {
    _TDispID _dispid(/* SetLink */ DISPID(10));
    TAutoArgs<2> _args;
    _args[1] = doc /*[VT_BSTR:0]*/;
    _args[2] = name /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall get_displayName()
  {
    _TDispID _dispid(/* displayName */ DISPID(11));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          value = {read = get_value, write = set_value};
  __property   BSTR            note = {read = get_note, write = set_note};
  __property   BSTR            Pseudonym = {read = get_Pseudonym, write = set_Pseudonym};
  __property   BSTR            Expression = {read = get_Expression, write = set_Expression};
  __property   TOLEBOOL        external = {read = get_external, write = set_external};
  __property   TOLEBOOL        Information = {read = get_Information, write = set_Information};
  __property   BSTR            name = {read = get_name};
  __property   BSTR            parameterNote = {read = get_parameterNote};
  __property   BSTR            linkVarName = {read = get_linkVarName};
  __property   BSTR            linkDocName = {read = get_linkDocName};
  __property   BSTR            displayName = {read = get_displayName};
};
// *********************************************************************//
// Interface: ksLibraryAttrTypeParam
// Flags:     (4096) Dispatchable
// GUID:      {FA93AA21-9B3D-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksLibraryAttrTypeParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_name(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* name */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_name()
  {
    _TDispID _dispid(/* name */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_typeId(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* typeId */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_typeId()
  {
    _TDispID _dispid(/* typeId */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            name = {read = get_name, write = set_name};
  __property   double          typeId = {read = get_typeId, write = set_typeId};
};
// *********************************************************************//
// Interface: ksAttributeObject
// Flags:     (4096) Dispatchable
// GUID:      {FA93AA24-9B3D-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksAttributeObject : public TDispWrapper<IDispatch>
{
  double __fastcall ksCreateAttrType(LPDISPATCH attrType, BSTR libName)
  {
    _TDispID _dispid(/* ksCreateAttrType */ DISPID(1));
    TAutoArgs<2> _args;
    _args[1] = attrType /*[VT_DISPATCH:0]*/;
    _args[2] = libName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDeleteAttrType(double attrID, BSTR libName, BSTR password)
  {
    _TDispID _dispid(/* ksDeleteAttrType */ DISPID(2));
    TAutoArgs<3> _args;
    _args[1] = attrID /*[VT_R8:0]*/;
    _args[2] = libName /*[VT_BSTR:0]*/;
    _args[3] = password /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetAttrType(double attrID, BSTR libName, LPDISPATCH attrType)
  {
    _TDispID _dispid(/* ksGetAttrType */ DISPID(3));
    TAutoArgs<3> _args;
    _args[1] = attrID /*[VT_R8:0]*/;
    _args[2] = libName /*[VT_BSTR:0]*/;
    _args[3] = attrType /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksSetAttrType(double attrID, BSTR libName, LPDISPATCH attrType, BSTR password)
  {
    _TDispID _dispid(/* ksSetAttrType */ DISPID(4));
    TAutoArgs<4> _args;
    _args[1] = attrID /*[VT_R8:0]*/;
    _args[2] = libName /*[VT_BSTR:0]*/;
    _args[3] = attrType /*[VT_DISPATCH:0]*/;
    _args[4] = password /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall ksChoiceAttrTypes(BSTR libName)
  {
    _TDispID _dispid(/* ksChoiceAttrTypes */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = libName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksCreateAttr(long pObj, LPDISPATCH attr, double attrID, BSTR libName)
  {
    _TDispID _dispid(/* ksCreateAttr */ DISPID(6));
    TAutoArgs<4> _args;
    _args[1] = pObj /*[VT_I4:0]*/;
    _args[2] = attr /*[VT_DISPATCH:0]*/;
    _args[3] = attrID /*[VT_R8:0]*/;
    _args[4] = libName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDeleteAttr(long pObj, long pAttr, BSTR password)
  {
    _TDispID _dispid(/* ksDeleteAttr */ DISPID(7));
    TAutoArgs<3> _args;
    _args[1] = pObj /*[VT_I4:0]*/;
    _args[2] = pAttr /*[VT_I4:0]*/;
    _args[3] = password /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetAttrValue(long pAttr, long rowNumb, long columnNumb, LPDISPATCH flagVisible, 
                                 LPDISPATCH columnKeys, LPDISPATCH value)
  {
    _TDispID _dispid(/* ksGetAttrValue */ DISPID(8));
    TAutoArgs<6> _args;
    _args[1] = pAttr /*[VT_I4:0]*/;
    _args[2] = rowNumb /*[VT_I4:0]*/;
    _args[3] = columnNumb /*[VT_I4:0]*/;
    _args[4] = flagVisible /*[VT_DISPATCH:0]*/;
    _args[5] = columnKeys /*[VT_DISPATCH:0]*/;
    _args[6] = value /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetAttrValue(long pAttr, long rowNumb, long columnNumb, LPDISPATCH flagVisible, 
                                 LPDISPATCH columnKeys, LPDISPATCH value, BSTR password)
  {
    _TDispID _dispid(/* ksSetAttrValue */ DISPID(9));
    TAutoArgs<7> _args;
    _args[1] = pAttr /*[VT_I4:0]*/;
    _args[2] = rowNumb /*[VT_I4:0]*/;
    _args[3] = columnNumb /*[VT_I4:0]*/;
    _args[4] = flagVisible /*[VT_DISPATCH:0]*/;
    _args[5] = columnKeys /*[VT_DISPATCH:0]*/;
    _args[6] = value /*[VT_DISPATCH:0]*/;
    _args[7] = password /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetAttrRow(long pAttr, long rowNumb, LPDISPATCH flagVisible, 
                               LPDISPATCH columnKeys, LPDISPATCH value)
  {
    _TDispID _dispid(/* ksGetAttrRow */ DISPID(10));
    TAutoArgs<5> _args;
    _args[1] = pAttr /*[VT_I4:0]*/;
    _args[2] = rowNumb /*[VT_I4:0]*/;
    _args[3] = flagVisible /*[VT_DISPATCH:0]*/;
    _args[4] = columnKeys /*[VT_DISPATCH:0]*/;
    _args[5] = value /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksSetAttrRow(long pAttr, long rowNumb, LPDISPATCH flagVisible, 
                               LPDISPATCH columnKeys, LPDISPATCH value, BSTR password)
  {
    _TDispID _dispid(/* ksSetAttrRow */ DISPID(11));
    TAutoArgs<6> _args;
    _args[1] = pAttr /*[VT_I4:0]*/;
    _args[2] = rowNumb /*[VT_I4:0]*/;
    _args[3] = flagVisible /*[VT_DISPATCH:0]*/;
    _args[4] = columnKeys /*[VT_DISPATCH:0]*/;
    _args[5] = value /*[VT_DISPATCH:0]*/;
    _args[6] = password /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksAddAttrRow(long pAttr, long rowNumb, LPDISPATCH flagVisible, LPDISPATCH value, 
                               BSTR password)
  {
    _TDispID _dispid(/* ksAddAttrRow */ DISPID(12));
    TAutoArgs<5> _args;
    _args[1] = pAttr /*[VT_I4:0]*/;
    _args[2] = rowNumb /*[VT_I4:0]*/;
    _args[3] = flagVisible /*[VT_DISPATCH:0]*/;
    _args[4] = value /*[VT_DISPATCH:0]*/;
    _args[5] = password /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksDeleteAttrRow(long pAttr, long rowNumb, BSTR password)
  {
    _TDispID _dispid(/* ksDeleteAttrRow */ DISPID(13));
    TAutoArgs<3> _args;
    _args[1] = pAttr /*[VT_I4:0]*/;
    _args[2] = rowNumb /*[VT_I4:0]*/;
    _args[3] = password /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetSizeAttrValue(long pAttr, long columnNumb, long* count)
  {
    _TDispID _dispid(/* ksGetSizeAttrValue */ DISPID(14));
    TAutoArgs<3> _args;
    _args[1] = pAttr /*[VT_I4:0]*/;
    _args[2] = columnNumb /*[VT_I4:0]*/;
    _args[3] = count /*[VT_I4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetSizeAttrRow(long pAttr, long* count)
  {
    _TDispID _dispid(/* ksGetSizeAttrRow */ DISPID(15));
    TAutoArgs<2> _args;
    _args[1] = pAttr /*[VT_I4:0]*/;
    _args[2] = count /*[VT_I4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetAttrKeysInfo(long pAttr, long* key1, long* key2, long* key3, long* key4, 
                                    double* numb)
  {
    _TDispID _dispid(/* ksGetAttrKeysInfo */ DISPID(16));
    TAutoArgs<6> _args;
    _args[1] = pAttr /*[VT_I4:0]*/;
    _args[2] = key1 /*[VT_I4:1]*/;
    _args[3] = key2 /*[VT_I4:1]*/;
    _args[4] = key3 /*[VT_I4:1]*/;
    _args[5] = key4 /*[VT_I4:1]*/;
    _args[6] = numb /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetAttrColumnInfo(long pAttr, long columnNumb, LPDISPATCH columnInfo)
  {
    _TDispID _dispid(/* ksGetAttrColumnInfo */ DISPID(17));
    TAutoArgs<3> _args;
    _args[1] = pAttr /*[VT_I4:0]*/;
    _args[2] = columnNumb /*[VT_I4:0]*/;
    _args[3] = columnInfo /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetAttrTabInfo(long pAttr, long* rowsCount, long* columnsCount)
  {
    _TDispID _dispid(/* ksGetAttrTabInfo */ DISPID(18));
    TAutoArgs<3> _args;
    _args[1] = pAttr /*[VT_I4:0]*/;
    _args[2] = rowsCount /*[VT_I4:1]*/;
    _args[3] = columnsCount /*[VT_I4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksViewEditAttr(long pAttr, long type, BSTR password)
  {
    _TDispID _dispid(/* ksViewEditAttr */ DISPID(19));
    TAutoArgs<3> _args;
    _args[1] = pAttr /*[VT_I4:0]*/;
    _args[2] = type /*[VT_I4:0]*/;
    _args[3] = password /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksViewEditAttrType(BSTR libName, long type, double attrID, BSTR password)
  {
    _TDispID _dispid(/* ksViewEditAttrType */ DISPID(20));
    TAutoArgs<4> _args;
    _args[1] = libName /*[VT_BSTR:0]*/;
    _args[2] = type /*[VT_I4:0]*/;
    _args[3] = attrID /*[VT_R8:0]*/;
    _args[4] = password /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksChoiceAttr(long pObj)
  {
    _TDispID _dispid(/* ksChoiceAttr */ DISPID(21));
    TAutoArgs<1> _args;
    _args[1] = pObj /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ksGetLibraryAttrTypesArray(BSTR libName)
  {
    _TDispID _dispid(/* ksGetLibraryAttrTypesArray */ DISPID(22));
    TAutoArgs<1> _args;
    _args[1] = libName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  Kompas6api5_tlb::ksAttribute3DPtr __fastcall ksCreateAttr3D(LPDISPATCH pObj, LPDISPATCH attr, 
                                                              double attrID, BSTR libName)
  {
    _TDispID _dispid(/* ksCreateAttr3D */ DISPID(23));
    TAutoArgs<4> _args;
    _args[1] = pObj /*[VT_DISPATCH:0]*/;
    _args[2] = attr /*[VT_DISPATCH:0]*/;
    _args[3] = attrID /*[VT_R8:0]*/;
    _args[4] = libName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksAttribute3D* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  long __fastcall ksDeleteAttr3D(LPDISPATCH pObj, Kompas6api5_tlb::ksAttribute3DPtr pAttr, 
                                 BSTR password)
  {
    _TDispID _dispid(/* ksDeleteAttr3D */ DISPID(24));
    TAutoArgs<3> _args;
    _args[1] = pObj /*[VT_DISPATCH:0]*/;
    _args[2] = (LPDISPATCH)(Kompas6api5_tlb::ksAttribute3D*)pAttr /*[VT_USERDEFINED:1]*/;
    _args[3] = password /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  Kompas6api5_tlb::ksAttribute3DPtr __fastcall ksChoiceAttr3D(LPDISPATCH pObj)
  {
    _TDispID _dispid(/* ksChoiceAttr3D */ DISPID(25));
    TAutoArgs<1> _args;
    _args[1] = pObj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksAttribute3D* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  Kompas6api5_tlb::ksAttribute3DPtr __fastcall ksCreateAttr3DEx(LPDISPATCH pObj, 
                                                                LPDISPATCH pSourcePart, 
                                                                LPDISPATCH attr, double attrID, 
                                                                BSTR libName)
  {
    _TDispID _dispid(/* ksCreateAttr3DEx */ DISPID(26));
    TAutoArgs<5> _args;
    _args[1] = pObj /*[VT_DISPATCH:0]*/;
    _args[2] = pSourcePart /*[VT_DISPATCH:0]*/;
    _args[3] = attr /*[VT_DISPATCH:0]*/;
    _args[4] = attrID /*[VT_R8:0]*/;
    _args[5] = libName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksAttribute3D* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  long __fastcall ksGetSizeAttrValueW(long pAttr, long columnNumb, long* count)
  {
    _TDispID _dispid(/* ksGetSizeAttrValueW */ DISPID(27));
    TAutoArgs<3> _args;
    _args[1] = pAttr /*[VT_I4:0]*/;
    _args[2] = columnNumb /*[VT_I4:0]*/;
    _args[3] = count /*[VT_I4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ksGetSizeAttrRowW(long pAttr, long* count)
  {
    _TDispID _dispid(/* ksGetSizeAttrRowW */ DISPID(28));
    TAutoArgs<2> _args;
    _args[1] = pAttr /*[VT_I4:0]*/;
    _args[2] = count /*[VT_I4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksRequestInfo3D
// Flags:     (4096) Dispatchable
// GUID:      {E9807824-9D55-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksRequestInfo3D : public TDispWrapper<IDispatch>
{
  void __fastcall set_prompt(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* prompt */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_prompt()
  {
    _TDispID _dispid(/* prompt */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_title(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* title */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_title()
  {
    _TDispID _dispid(/* title */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_cursorName(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* cursorName */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_cursorName()
  {
    _TDispID _dispid(/* cursorName */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_commandsString(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* commandsString */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_commandsString()
  {
    _TDispID _dispid(/* commandsString */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_cursorId(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* cursorId */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_cursorId()
  {
    _TDispID _dispid(/* cursorId */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_menuId(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* menuId */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_menuId()
  {
    _TDispID _dispid(/* menuId */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_DynamicFiltering(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* DynamicFiltering */ DISPID(20));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_DynamicFiltering()
  {
    _TDispID _dispid(/* DynamicFiltering */ DISPID(20));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall GetFilterCallBack()
  {
    _TDispID _dispid(/* GetFilterCallBack */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall GetCallBack()
  {
    _TDispID _dispid(/* GetCallBack */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetFilterCallBack(BSTR methodName, long hInst, LPDISPATCH dispatchOCX)
  {
    _TDispID _dispid(/* SetFilterCallBack */ DISPID(9));
    TAutoArgs<3> _args;
    _args[1] = methodName /*[VT_BSTR:0]*/;
    _args[2] = hInst /*[VT_I4:0]*/;
    _args[3] = dispatchOCX /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetCallBack(BSTR methodName, long hInst, LPDISPATCH dispatchOCX)
  {
    _TDispID _dispid(/* SetCallBack */ DISPID(10));
    TAutoArgs<3> _args;
    _args[1] = methodName /*[VT_BSTR:0]*/;
    _args[2] = hInst /*[VT_I4:0]*/;
    _args[3] = dispatchOCX /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlacement()
  {
    _TDispID _dispid(/* GetPlacement */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetEntityCollection()
  {
    _TDispID _dispid(/* GetEntityCollection */ DISPID(12));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetCurrentCommand()
  {
    _TDispID _dispid(/* GetCurrentCommand */ DISPID(13));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetMateConstraintCollection()
  {
    _TDispID _dispid(/* GetMateConstraintCollection */ DISPID(14));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetIPhantom()
  {
    _TDispID _dispid(/* GetIPhantom */ DISPID(15));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall CreatePhantom()
  {
    _TDispID _dispid(/* CreatePhantom */ DISPID(16));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPUNKNOWN __fastcall GetProcessParam()
  {
    _TDispID _dispid(/* GetProcessParam */ DISPID(17));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetProcessParam(LPUNKNOWN param)
  {
    _TDispID _dispid(/* SetProcessParam */ DISPID(18));
    TAutoArgs<1> _args;
    _args[1] = param /*[VT_UNKNOWN:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetCallBackFeature()
  {
    _TDispID _dispid(/* GetCallBackFeature */ DISPID(19));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            prompt = {read = get_prompt, write = set_prompt};
  __property   BSTR            title = {read = get_title, write = set_title};
  __property   BSTR            cursorName = {read = get_cursorName, write = set_cursorName};
  __property   BSTR            commandsString = {read = get_commandsString, write = set_commandsString};
  __property   long            cursorId = {read = get_cursorId, write = set_cursorId};
  __property   long            menuId = {read = get_menuId, write = set_menuId};
  __property   TOLEBOOL        DynamicFiltering = {read = get_DynamicFiltering, write = set_DynamicFiltering};
};
// *********************************************************************//
// Interface: ksMateConstraint
// Flags:     (4096) Dispatchable
// GUID:      {508A0CC4-9D74-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksMateConstraint : public TDispWrapper<IDispatch>
{
  void __fastcall set_constraintType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* constraintType */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_constraintType()
  {
    _TDispID _dispid(/* constraintType */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_direction(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* direction */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_direction()
  {
    _TDispID _dispid(/* direction */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_fixed(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* fixed */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_fixed()
  {
    _TDispID _dispid(/* fixed */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_distance(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* distance */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_distance()
  {
    _TDispID _dispid(/* distance */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Create()
  {
    _TDispID _dispid(/* Create */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetBaseObj(short number)
  {
    _TDispID _dispid(/* GetBaseObj */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = number /*[VT_I2:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetBaseObj(short number, LPDISPATCH obj)
  {
    _TDispID _dispid(/* SetBaseObj */ DISPID(7));
    TAutoArgs<2> _args;
    _args[1] = number /*[VT_I2:0]*/;
    _args[2] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetFeature()
  {
    _TDispID _dispid(/* GetFeature */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetEntityParams(short number, TVariant* params)
  {
    _TDispID _dispid(/* GetEntityParams */ DISPID(9));
    TAutoArgs<2> _args;
    _args[1] = number /*[VT_I2:0]*/;
    _args[2] = params /*[VT_VARIANT:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           constraintType = {read = get_constraintType, write = set_constraintType};
  __property   short           direction = {read = get_direction, write = set_direction};
  __property   short           fixed = {read = get_fixed, write = set_fixed};
  __property   double          distance = {read = get_distance, write = set_distance};
};
// *********************************************************************//
// Interface: ksDefaultObject
// Flags:     (4096) Dispatchable
// GUID:      {508A0CC7-9D74-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksDefaultObject : public TDispWrapper<IDispatch>
{
  LPDISPATCH __fastcall GetSurface()
  {
    _TDispID _dispid(/* GetSurface */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetCurve3D()
  {
    _TDispID _dispid(/* GetCurve3D */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksModelLibrary
// Flags:     (4096) Dispatchable
// GUID:      {111CEFE4-A0A7-11D6-95CE-00C0262D30E3}
// *********************************************************************//
interface ksModelLibrary : public TDispWrapper<IDispatch>
{
  long __fastcall ModelLibraryOperation(BSTR libName, long type)
  {
    _TDispID _dispid(/* ModelLibraryOperation */ DISPID(1));
    TAutoArgs<2> _args;
    _args[1] = libName /*[VT_BSTR:0]*/;
    _args[2] = type /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall ChoiceModelFromLib(BSTR libFile, long* type)
  {
    _TDispID _dispid(/* ChoiceModelFromLib */ DISPID(2));
    TAutoArgs<2> _args;
    _args[1] = libFile /*[VT_BSTR:0]*/;
    _args[2] = type /*[VT_I4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall ExistModelInLibrary(BSTR name)
  {
    _TDispID _dispid(/* ExistModelInLibrary */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = name /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall AddD3DocumentToLibrary(BSTR libName, BSTR fileName)
  {
    _TDispID _dispid(/* AddD3DocumentToLibrary */ DISPID(4));
    TAutoArgs<2> _args;
    _args[1] = libName /*[VT_BSTR:0]*/;
    _args[2] = fileName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall CheckModelLibrary(BSTR libName, TOLEBOOL possibleMessage)
  {
    _TDispID _dispid(/* CheckModelLibrary */ DISPID(5));
    TAutoArgs<2> _args;
    _args[1] = libName /*[VT_BSTR:0]*/;
    _args[2] = possibleMessage /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksVariableCollection
// Flags:     (4096) Dispatchable
// GUID:      {03CEAC81-C0B8-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksVariableCollection : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall refresh()
  {
    _TDispID _dispid(/* refresh */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetCount()
  {
    _TDispID _dispid(/* GetCount */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall First()
  {
    _TDispID _dispid(/* First */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Last()
  {
    _TDispID _dispid(/* Last */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Next()
  {
    _TDispID _dispid(/* Next */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Prev()
  {
    _TDispID _dispid(/* Prev */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetByIndex(long index)
  {
    _TDispID _dispid(/* GetByIndex */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetByName(BSTR name, TOLEBOOL testFullName/*[def,opt]*/, 
                                  TOLEBOOL testIgnoreCase/*[def,opt]*/)
  {
    _TDispID _dispid(/* GetByName */ DISPID(8));
    TAutoArgs<3> _args;
    _args[1] = name /*[VT_BSTR:0]*/;
    _args[2] = testFullName /*[VT_BOOL:0]*/;
    _args[3] = testIgnoreCase /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall AddNewVariable(BSTR name, double value, BSTR note)
  {
    _TDispID _dispid(/* AddNewVariable */ DISPID(9));
    TAutoArgs<3> _args;
    _args[1] = name /*[VT_BSTR:0]*/;
    _args[2] = value /*[VT_R8:0]*/;
    _args[3] = note /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall RemoveVariable(BSTR name)
  {
    _TDispID _dispid(/* RemoveVariable */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = name /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksMateConstraintCollection
// Flags:     (4096) Dispatchable
// GUID:      {03CEAC84-C0B8-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksMateConstraintCollection : public TDispWrapper<IDispatch>
{
  long __fastcall GetCount()
  {
    _TDispID _dispid(/* GetCount */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall First()
  {
    _TDispID _dispid(/* First */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Last()
  {
    _TDispID _dispid(/* Last */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Next()
  {
    _TDispID _dispid(/* Next */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Prev()
  {
    _TDispID _dispid(/* Prev */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetByIndex(long index)
  {
    _TDispID _dispid(/* GetByIndex */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall AddMateConstraint(LPDISPATCH mate)
  {
    _TDispID _dispid(/* AddMateConstraint */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = mate /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall RemoveMateConstraint(LPDISPATCH mate)
  {
    _TDispID _dispid(/* RemoveMateConstraint */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = mate /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Clear()
  {
    _TDispID _dispid(/* Clear */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall refresh()
  {
    _TDispID _dispid(/* refresh */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall FindIt(LPDISPATCH entity)
  {
    _TDispID _dispid(/* FindIt */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetSafeArrayByObj(LPDISPATCH obj, TVariant* pArray)
  {
    _TDispID _dispid(/* GetSafeArrayByObj */ DISPID(12));
    TAutoArgs<2> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    _args[2] = pArray /*[VT_VARIANT:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksPartCollection
// Flags:     (4096) Dispatchable
// GUID:      {03CEAC87-C0B8-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksPartCollection : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall refresh()
  {
    _TDispID _dispid(/* refresh */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetCount()
  {
    _TDispID _dispid(/* GetCount */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall First()
  {
    _TDispID _dispid(/* First */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Last()
  {
    _TDispID _dispid(/* Last */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Next()
  {
    _TDispID _dispid(/* Next */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Prev()
  {
    _TDispID _dispid(/* Prev */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetByName(BSTR name, TOLEBOOL testFullName/*[def,opt]*/, 
                                  TOLEBOOL testIgnoreCase/*[def,opt]*/)
  {
    _TDispID _dispid(/* GetByName */ DISPID(7));
    TAutoArgs<3> _args;
    _args[1] = name /*[VT_BSTR:0]*/;
    _args[2] = testFullName /*[VT_BOOL:0]*/;
    _args[3] = testIgnoreCase /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetByIndex(long index)
  {
    _TDispID _dispid(/* GetByIndex */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Add(LPDISPATCH part)
  {
    _TDispID _dispid(/* Add */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = part /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall AddAt(LPDISPATCH part, long index)
  {
    _TDispID _dispid(/* AddAt */ DISPID(10));
    TAutoArgs<2> _args;
    _args[1] = part /*[VT_DISPATCH:0]*/;
    _args[2] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall AddBefore(LPDISPATCH part, LPDISPATCH base)
  {
    _TDispID _dispid(/* AddBefore */ DISPID(11));
    TAutoArgs<2> _args;
    _args[1] = part /*[VT_DISPATCH:0]*/;
    _args[2] = base /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DetachByIndex(long index)
  {
    _TDispID _dispid(/* DetachByIndex */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DetachByBody(LPDISPATCH part)
  {
    _TDispID _dispid(/* DetachByBody */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = part /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Clear()
  {
    _TDispID _dispid(/* Clear */ DISPID(14));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetByIndex(LPDISPATCH part, long index)
  {
    _TDispID _dispid(/* SetByIndex */ DISPID(15));
    TAutoArgs<2> _args;
    _args[1] = part /*[VT_DISPATCH:0]*/;
    _args[2] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall FindIt(LPDISPATCH entity)
  {
    _TDispID _dispid(/* FindIt */ DISPID(16));
    TAutoArgs<1> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksMeshPartArrayDefinition
// Flags:     (4096) Dispatchable
// GUID:      {E6E78D61-C0FA-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksMeshPartArrayDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_angle1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angle1 */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angle1()
  {
    _TDispID _dispid(/* angle1 */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_count1(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* count1 */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_count1()
  {
    _TDispID _dispid(/* count1 */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_step1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* step1 */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_step1()
  {
    _TDispID _dispid(/* step1 */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_factor1(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* factor1 */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_factor1()
  {
    _TDispID _dispid(/* factor1 */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_angle2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angle2 */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angle2()
  {
    _TDispID _dispid(/* angle2 */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_count2(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* count2 */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_count2()
  {
    _TDispID _dispid(/* count2 */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_step2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* step2 */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_step2()
  {
    _TDispID _dispid(/* step2 */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_factor2(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* factor2 */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_factor2()
  {
    _TDispID _dispid(/* factor2 */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_insideFlag(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* insideFlag */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_insideFlag()
  {
    _TDispID _dispid(/* insideFlag */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetAxis1()
  {
    _TDispID _dispid(/* GetAxis1 */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetAxis1(LPDISPATCH axis)
  {
    _TDispID _dispid(/* SetAxis1 */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = axis /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetAxis2()
  {
    _TDispID _dispid(/* GetAxis2 */ DISPID(12));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetAxis2(LPDISPATCH axis)
  {
    _TDispID _dispid(/* SetAxis2 */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = axis /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall PartArray()
  {
    _TDispID _dispid(/* PartArray */ DISPID(14));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetCopyParamAlongAxis(TOLEBOOL firstAxis, double* angle, long* count, 
                                            double* step, TOLEBOOL* factor)
  {
    _TDispID _dispid(/* GetCopyParamAlongAxis */ DISPID(15));
    TAutoArgs<5> _args;
    _args[1] = firstAxis /*[VT_BOOL:0]*/;
    _args[2] = angle /*[VT_R8:1]*/;
    _args[3] = count /*[VT_I4:1]*/;
    _args[4] = step /*[VT_R8:1]*/;
    _args[5] = factor /*[VT_BOOL:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetCopyParamAlongAxis(TOLEBOOL firstAxis, double angle, long count, 
                                            double step, TOLEBOOL factor)
  {
    _TDispID _dispid(/* SetCopyParamAlongAxis */ DISPID(16));
    TAutoArgs<5> _args;
    _args[1] = firstAxis /*[VT_BOOL:0]*/;
    _args[2] = angle /*[VT_R8:0]*/;
    _args[3] = count /*[VT_I4:0]*/;
    _args[4] = step /*[VT_R8:0]*/;
    _args[5] = factor /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall DeletedCollection()
  {
    _TDispID _dispid(/* DeletedCollection */ DISPID(17));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          angle1 = {read = get_angle1, write = set_angle1};
  __property   long            count1 = {read = get_count1, write = set_count1};
  __property   double          step1 = {read = get_step1, write = set_step1};
  __property   TOLEBOOL        factor1 = {read = get_factor1, write = set_factor1};
  __property   double          angle2 = {read = get_angle2, write = set_angle2};
  __property   long            count2 = {read = get_count2, write = set_count2};
  __property   double          step2 = {read = get_step2, write = set_step2};
  __property   TOLEBOOL        factor2 = {read = get_factor2, write = set_factor2};
  __property   TOLEBOOL        insideFlag = {read = get_insideFlag, write = set_insideFlag};
};
// *********************************************************************//
// Interface: ksCircularPartArrayDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DDD05143-C180-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksCircularPartArrayDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_count1(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* count1 */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_count1()
  {
    _TDispID _dispid(/* count1 */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_step1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* step1 */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_step1()
  {
    _TDispID _dispid(/* step1 */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_factor1(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* factor1 */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_factor1()
  {
    _TDispID _dispid(/* factor1 */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_count2(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* count2 */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_count2()
  {
    _TDispID _dispid(/* count2 */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_step2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* step2 */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_step2()
  {
    _TDispID _dispid(/* step2 */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_factor2(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* factor2 */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_factor2()
  {
    _TDispID _dispid(/* factor2 */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_inverce(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* inverce */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_inverce()
  {
    _TDispID _dispid(/* inverce */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_keepAngle(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* keepAngle */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_keepAngle()
  {
    _TDispID _dispid(/* keepAngle */ DISPID(14));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall PartArray()
  {
    _TDispID _dispid(/* PartArray */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetAxis()
  {
    _TDispID _dispid(/* GetAxis */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetAxis(LPDISPATCH axis)
  {
    _TDispID _dispid(/* SetAxis */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = axis /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetCopyParamAlongDir(long* count, double* step, TOLEBOOL* factor, TOLEBOOL dir)
  {
    _TDispID _dispid(/* GetCopyParamAlongDir */ DISPID(11));
    TAutoArgs<4> _args;
    _args[1] = count /*[VT_I4:1]*/;
    _args[2] = step /*[VT_R8:1]*/;
    _args[3] = factor /*[VT_BOOL:1]*/;
    _args[4] = dir /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetCopyParamAlongDir(long count, double step, TOLEBOOL factor, TOLEBOOL dir)
  {
    _TDispID _dispid(/* SetCopyParamAlongDir */ DISPID(12));
    TAutoArgs<4> _args;
    _args[1] = count /*[VT_I4:0]*/;
    _args[2] = step /*[VT_R8:0]*/;
    _args[3] = factor /*[VT_BOOL:0]*/;
    _args[4] = dir /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall DeletedCollection()
  {
    _TDispID _dispid(/* DeletedCollection */ DISPID(13));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            count1 = {read = get_count1, write = set_count1};
  __property   double          step1 = {read = get_step1, write = set_step1};
  __property   TOLEBOOL        factor1 = {read = get_factor1, write = set_factor1};
  __property   long            count2 = {read = get_count2, write = set_count2};
  __property   double          step2 = {read = get_step2, write = set_step2};
  __property   TOLEBOOL        factor2 = {read = get_factor2, write = set_factor2};
  __property   TOLEBOOL        inverce = {read = get_inverce, write = set_inverce};
  __property   TOLEBOOL        keepAngle = {read = get_keepAngle, write = set_keepAngle};
};
// *********************************************************************//
// Interface: ksCurvePartArrayDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DDD05146-C180-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksCurvePartArrayDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_count(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* count */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_count()
  {
    _TDispID _dispid(/* count */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_step(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* step */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_step()
  {
    _TDispID _dispid(/* step */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_factor(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* factor */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_factor()
  {
    _TDispID _dispid(/* factor */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_keepAngle(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* keepAngle */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_keepAngle()
  {
    _TDispID _dispid(/* keepAngle */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_fullCurve(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* fullCurve */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_fullCurve()
  {
    _TDispID _dispid(/* fullCurve */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_sence(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* sence */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_sence()
  {
    _TDispID _dispid(/* sence */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall PartArray()
  {
    _TDispID _dispid(/* PartArray */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall CurveArray()
  {
    _TDispID _dispid(/* CurveArray */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall DeletedCollection()
  {
    _TDispID _dispid(/* DeletedCollection */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            count = {read = get_count, write = set_count};
  __property   double          step = {read = get_step, write = set_step};
  __property   TOLEBOOL        factor = {read = get_factor, write = set_factor};
  __property   TOLEBOOL        keepAngle = {read = get_keepAngle, write = set_keepAngle};
  __property   TOLEBOOL        fullCurve = {read = get_fullCurve, write = set_fullCurve};
  __property   TOLEBOOL        sence = {read = get_sence, write = set_sence};
};
// *********************************************************************//
// Interface: ksDerivativePartArrayDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DDD05149-C180-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksDerivativePartArrayDefinition : public TDispWrapper<IDispatch>
{
  LPDISPATCH __fastcall PartArray()
  {
    _TDispID _dispid(/* PartArray */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetDeriv()
  {
    _TDispID _dispid(/* GetDeriv */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetDeriv(LPDISPATCH deriv)
  {
    _TDispID _dispid(/* SetDeriv */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = deriv /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall DeletedCollection()
  {
    _TDispID _dispid(/* DeletedCollection */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksAxis2PlanesDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB81-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksAxis2PlanesDefinition : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall SetPlane(long number, LPDISPATCH plane)
  {
    _TDispID _dispid(/* SetPlane */ DISPID(1));
    TAutoArgs<2> _args;
    _args[1] = number /*[VT_I4:0]*/;
    _args[2] = plane /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlane(long number)
  {
    _TDispID _dispid(/* GetPlane */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = number /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetCurve3D()
  {
    _TDispID _dispid(/* GetCurve3D */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksAxisOperationsDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB84-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksAxisOperationsDefinition : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall SetOperation(LPDISPATCH plane)
  {
    _TDispID _dispid(/* SetOperation */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = plane /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetOperation()
  {
    _TDispID _dispid(/* GetOperation */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetCurve3D()
  {
    _TDispID _dispid(/* GetCurve3D */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksAxis2PointsDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB87-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksAxis2PointsDefinition : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall SetPoint(long number, LPDISPATCH point)
  {
    _TDispID _dispid(/* SetPoint */ DISPID(1));
    TAutoArgs<2> _args;
    _args[1] = number /*[VT_I4:0]*/;
    _args[2] = point /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPoint(long number)
  {
    _TDispID _dispid(/* GetPoint */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = number /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetCurve3D()
  {
    _TDispID _dispid(/* GetCurve3D */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksAxisEdgeDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB8A-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksAxisEdgeDefinition : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall SetEdge(LPDISPATCH edge)
  {
    _TDispID _dispid(/* SetEdge */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = edge /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetEdge()
  {
    _TDispID _dispid(/* GetEdge */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetCurve3D()
  {
    _TDispID _dispid(/* GetCurve3D */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksMeshCopyDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB8D-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksMeshCopyDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_angle1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angle1 */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angle1()
  {
    _TDispID _dispid(/* angle1 */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_count1(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* count1 */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_count1()
  {
    _TDispID _dispid(/* count1 */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_step1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* step1 */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_step1()
  {
    _TDispID _dispid(/* step1 */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_factor1(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* factor1 */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_factor1()
  {
    _TDispID _dispid(/* factor1 */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_angle2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angle2 */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angle2()
  {
    _TDispID _dispid(/* angle2 */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_count2(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* count2 */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_count2()
  {
    _TDispID _dispid(/* count2 */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_step2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* step2 */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_step2()
  {
    _TDispID _dispid(/* step2 */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_factor2(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* factor2 */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_factor2()
  {
    _TDispID _dispid(/* factor2 */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_insideFlag(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* insideFlag */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_insideFlag()
  {
    _TDispID _dispid(/* insideFlag */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_geomArray(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* geomArray */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_geomArray()
  {
    _TDispID _dispid(/* geomArray */ DISPID(14));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall OperationArray()
  {
    _TDispID _dispid(/* OperationArray */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetCopyParamAlongAxis(TOLEBOOL firstAxis, double* angle, long* count, 
                                            double* step, TOLEBOOL* factor)
  {
    _TDispID _dispid(/* GetCopyParamAlongAxis */ DISPID(11));
    TAutoArgs<5> _args;
    _args[1] = firstAxis /*[VT_BOOL:0]*/;
    _args[2] = angle /*[VT_R8:1]*/;
    _args[3] = count /*[VT_I4:1]*/;
    _args[4] = step /*[VT_R8:1]*/;
    _args[5] = factor /*[VT_BOOL:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetCopyParamAlongAxis(TOLEBOOL firstAxis, double angle, long count, 
                                            double step, TOLEBOOL factor)
  {
    _TDispID _dispid(/* SetCopyParamAlongAxis */ DISPID(12));
    TAutoArgs<5> _args;
    _args[1] = firstAxis /*[VT_BOOL:0]*/;
    _args[2] = angle /*[VT_R8:0]*/;
    _args[3] = count /*[VT_I4:0]*/;
    _args[4] = step /*[VT_R8:0]*/;
    _args[5] = factor /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall DeletedCollection()
  {
    _TDispID _dispid(/* DeletedCollection */ DISPID(13));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetAxis1()
  {
    _TDispID _dispid(/* GetAxis1 */ DISPID(15));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetAxis1(LPDISPATCH axis)
  {
    _TDispID _dispid(/* SetAxis1 */ DISPID(16));
    TAutoArgs<1> _args;
    _args[1] = axis /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetAxis2()
  {
    _TDispID _dispid(/* GetAxis2 */ DISPID(17));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetAxis2(LPDISPATCH axis)
  {
    _TDispID _dispid(/* SetAxis2 */ DISPID(18));
    TAutoArgs<1> _args;
    _args[1] = axis /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          angle1 = {read = get_angle1, write = set_angle1};
  __property   long            count1 = {read = get_count1, write = set_count1};
  __property   double          step1 = {read = get_step1, write = set_step1};
  __property   TOLEBOOL        factor1 = {read = get_factor1, write = set_factor1};
  __property   double          angle2 = {read = get_angle2, write = set_angle2};
  __property   long            count2 = {read = get_count2, write = set_count2};
  __property   double          step2 = {read = get_step2, write = set_step2};
  __property   TOLEBOOL        factor2 = {read = get_factor2, write = set_factor2};
  __property   TOLEBOOL        insideFlag = {read = get_insideFlag, write = set_insideFlag};
  __property   TOLEBOOL        geomArray = {read = get_geomArray, write = set_geomArray};
};
// *********************************************************************//
// Interface: ksCircularCopyDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB90-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksCircularCopyDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_count1(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* count1 */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_count1()
  {
    _TDispID _dispid(/* count1 */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_step1(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* step1 */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_step1()
  {
    _TDispID _dispid(/* step1 */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_factor1(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* factor1 */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_factor1()
  {
    _TDispID _dispid(/* factor1 */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_count2(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* count2 */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_count2()
  {
    _TDispID _dispid(/* count2 */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_step2(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* step2 */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_step2()
  {
    _TDispID _dispid(/* step2 */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_factor2(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* factor2 */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_factor2()
  {
    _TDispID _dispid(/* factor2 */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_inverce(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* inverce */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_inverce()
  {
    _TDispID _dispid(/* inverce */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_geomArray(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* geomArray */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_geomArray()
  {
    _TDispID _dispid(/* geomArray */ DISPID(14));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetOperationArray()
  {
    _TDispID _dispid(/* GetOperationArray */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetAxis()
  {
    _TDispID _dispid(/* GetAxis */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetAxis(LPDISPATCH axis)
  {
    _TDispID _dispid(/* SetAxis */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = axis /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetCopyParamAlongDir(long* count, double* step, TOLEBOOL* factor, TOLEBOOL dir)
  {
    _TDispID _dispid(/* GetCopyParamAlongDir */ DISPID(11));
    TAutoArgs<4> _args;
    _args[1] = count /*[VT_I4:1]*/;
    _args[2] = step /*[VT_R8:1]*/;
    _args[3] = factor /*[VT_BOOL:1]*/;
    _args[4] = dir /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetCopyParamAlongDir(long count, double step, TOLEBOOL factor, TOLEBOOL dir)
  {
    _TDispID _dispid(/* SetCopyParamAlongDir */ DISPID(12));
    TAutoArgs<4> _args;
    _args[1] = count /*[VT_I4:0]*/;
    _args[2] = step /*[VT_R8:0]*/;
    _args[3] = factor /*[VT_BOOL:0]*/;
    _args[4] = dir /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall DeletedCollection()
  {
    _TDispID _dispid(/* DeletedCollection */ DISPID(13));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            count1 = {read = get_count1, write = set_count1};
  __property   double          step1 = {read = get_step1, write = set_step1};
  __property   TOLEBOOL        factor1 = {read = get_factor1, write = set_factor1};
  __property   long            count2 = {read = get_count2, write = set_count2};
  __property   double          step2 = {read = get_step2, write = set_step2};
  __property   TOLEBOOL        factor2 = {read = get_factor2, write = set_factor2};
  __property   TOLEBOOL        inverce = {read = get_inverce, write = set_inverce};
  __property   TOLEBOOL        geomArray = {read = get_geomArray, write = set_geomArray};
};
// *********************************************************************//
// Interface: ksCurveCopyDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB93-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksCurveCopyDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_count(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* count */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_count()
  {
    _TDispID _dispid(/* count */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_step(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* step */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_step()
  {
    _TDispID _dispid(/* step */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_factor(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* factor */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_factor()
  {
    _TDispID _dispid(/* factor */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_keepAngle(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* keepAngle */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_keepAngle()
  {
    _TDispID _dispid(/* keepAngle */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_fullCurve(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* fullCurve */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_fullCurve()
  {
    _TDispID _dispid(/* fullCurve */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_sence(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* sence */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_sence()
  {
    _TDispID _dispid(/* sence */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_geomArray(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* geomArray */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_geomArray()
  {
    _TDispID _dispid(/* geomArray */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall OperationArray()
  {
    _TDispID _dispid(/* OperationArray */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall CurveArray()
  {
    _TDispID _dispid(/* CurveArray */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall DeletedCollection()
  {
    _TDispID _dispid(/* DeletedCollection */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            count = {read = get_count, write = set_count};
  __property   double          step = {read = get_step, write = set_step};
  __property   TOLEBOOL        factor = {read = get_factor, write = set_factor};
  __property   TOLEBOOL        keepAngle = {read = get_keepAngle, write = set_keepAngle};
  __property   TOLEBOOL        fullCurve = {read = get_fullCurve, write = set_fullCurve};
  __property   TOLEBOOL        sence = {read = get_sence, write = set_sence};
  __property   TOLEBOOL        geomArray = {read = get_geomArray, write = set_geomArray};
};
// *********************************************************************//
// Interface: ksMirrorCopyDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB96-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksMirrorCopyDefinition : public TDispWrapper<IDispatch>
{
  LPDISPATCH __fastcall GetOperationArray()
  {
    _TDispID _dispid(/* GetOperationArray */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlane()
  {
    _TDispID _dispid(/* GetPlane */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPlane(LPDISPATCH plane)
  {
    _TDispID _dispid(/* SetPlane */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = plane /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksMirrorCopyAllDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB99-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksMirrorCopyAllDefinition : public TDispWrapper<IDispatch>
{
  LPDISPATCH __fastcall GetPlane()
  {
    _TDispID _dispid(/* GetPlane */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPlane(LPDISPATCH plane)
  {
    _TDispID _dispid(/* SetPlane */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = plane /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ChooseBodies()
  {
    _TDispID _dispid(/* ChooseBodies */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksConicSpiralDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB9C-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksConicSpiralDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_turn(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* turn */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_turn()
  {
    _TDispID _dispid(/* turn */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_step(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* step */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_step()
  {
    _TDispID _dispid(/* step */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_turnDir(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* turnDir */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_turnDir()
  {
    _TDispID _dispid(/* turnDir */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_buildMode(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* buildMode */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_buildMode()
  {
    _TDispID _dispid(/* buildMode */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_buildDir(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* buildDir */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_buildDir()
  {
    _TDispID _dispid(/* buildDir */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_height(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* height */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_height()
  {
    _TDispID _dispid(/* height */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_heightType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* heightType */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_heightType()
  {
    _TDispID _dispid(/* heightType */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_heightAdd(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* heightAdd */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_heightAdd()
  {
    _TDispID _dispid(/* heightAdd */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_heightAddHow(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* heightAddHow */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_heightAddHow()
  {
    _TDispID _dispid(/* heightAddHow */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_initialDiam(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* initialDiam */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_initialDiam()
  {
    _TDispID _dispid(/* initialDiam */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_initialDiamType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* initialDiamType */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_initialDiamType()
  {
    _TDispID _dispid(/* initialDiamType */ DISPID(11));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_terminalDiam(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* terminalDiam */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_terminalDiam()
  {
    _TDispID _dispid(/* terminalDiam */ DISPID(12));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_terminalDiamType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* terminalDiamType */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_terminalDiamType()
  {
    _TDispID _dispid(/* terminalDiamType */ DISPID(13));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_tiltAngleHow(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* tiltAngleHow */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_tiltAngleHow()
  {
    _TDispID _dispid(/* tiltAngleHow */ DISPID(14));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_firstAngle(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* firstAngle */ DISPID(15));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_firstAngle()
  {
    _TDispID _dispid(/* firstAngle */ DISPID(15));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_tiltAngle(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* tiltAngle */ DISPID(16));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_tiltAngle()
  {
    _TDispID _dispid(/* tiltAngle */ DISPID(16));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlane()
  {
    _TDispID _dispid(/* GetPlane */ DISPID(17));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPlane(LPDISPATCH plane)
  {
    _TDispID _dispid(/* SetPlane */ DISPID(18));
    TAutoArgs<1> _args;
    _args[1] = plane /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetLocation(double* x, double* y)
  {
    _TDispID _dispid(/* GetLocation */ DISPID(19));
    TAutoArgs<2> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetLocation(double x, double y)
  {
    _TDispID _dispid(/* SetLocation */ DISPID(20));
    TAutoArgs<2> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetHeightObject()
  {
    _TDispID _dispid(/* GetHeightObject */ DISPID(21));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetHeightObject(LPDISPATCH heightObject)
  {
    _TDispID _dispid(/* SetHeightObject */ DISPID(22));
    TAutoArgs<1> _args;
    _args[1] = heightObject /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetInitialDiamObject()
  {
    _TDispID _dispid(/* GetInitialDiamObject */ DISPID(23));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetInitialDiamObject(LPDISPATCH initialDiamObject)
  {
    _TDispID _dispid(/* SetInitialDiamObject */ DISPID(24));
    TAutoArgs<1> _args;
    _args[1] = initialDiamObject /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetTerminalDiamObject()
  {
    _TDispID _dispid(/* GetTerminalDiamObject */ DISPID(25));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetTerminalDiamObject(LPDISPATCH terminalDiamObject)
  {
    _TDispID _dispid(/* SetTerminalDiamObject */ DISPID(26));
    TAutoArgs<1> _args;
    _args[1] = terminalDiamObject /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSketch()
  {
    _TDispID _dispid(/* GetSketch */ DISPID(27));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          turn = {read = get_turn, write = set_turn};
  __property   double          step = {read = get_step, write = set_step};
  __property   TOLEBOOL        turnDir = {read = get_turnDir, write = set_turnDir};
  __property   short           buildMode = {read = get_buildMode, write = set_buildMode};
  __property   TOLEBOOL        buildDir = {read = get_buildDir, write = set_buildDir};
  __property   double          height = {read = get_height, write = set_height};
  __property   short           heightType = {read = get_heightType, write = set_heightType};
  __property   double          heightAdd = {read = get_heightAdd, write = set_heightAdd};
  __property   TOLEBOOL        heightAddHow = {read = get_heightAddHow, write = set_heightAddHow};
  __property   double          initialDiam = {read = get_initialDiam, write = set_initialDiam};
  __property   short           initialDiamType = {read = get_initialDiamType, write = set_initialDiamType};
  __property   double          terminalDiam = {read = get_terminalDiam, write = set_terminalDiam};
  __property   short           terminalDiamType = {read = get_terminalDiamType, write = set_terminalDiamType};
  __property   TOLEBOOL        tiltAngleHow = {read = get_tiltAngleHow, write = set_tiltAngleHow};
  __property   double          firstAngle = {read = get_firstAngle, write = set_firstAngle};
  __property   double          tiltAngle = {read = get_tiltAngle, write = set_tiltAngle};
};
// *********************************************************************//
// Interface: ksCylindricSpiralDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB9F-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksCylindricSpiralDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_turn(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* turn */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_turn()
  {
    _TDispID _dispid(/* turn */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_step(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* step */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_step()
  {
    _TDispID _dispid(/* step */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_turnDir(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* turnDir */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_turnDir()
  {
    _TDispID _dispid(/* turnDir */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_buildMode(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* buildMode */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_buildMode()
  {
    _TDispID _dispid(/* buildMode */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_buildDir(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* buildDir */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_buildDir()
  {
    _TDispID _dispid(/* buildDir */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_height(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* height */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_height()
  {
    _TDispID _dispid(/* height */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_heightType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* heightType */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_heightType()
  {
    _TDispID _dispid(/* heightType */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_heightAdd(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* heightAdd */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_heightAdd()
  {
    _TDispID _dispid(/* heightAdd */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_heightAddHow(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* heightAddHow */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_heightAddHow()
  {
    _TDispID _dispid(/* heightAddHow */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_diam(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* diam */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_diam()
  {
    _TDispID _dispid(/* diam */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_diamType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* diamType */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_diamType()
  {
    _TDispID _dispid(/* diamType */ DISPID(11));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_firstAngle(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* firstAngle */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_firstAngle()
  {
    _TDispID _dispid(/* firstAngle */ DISPID(12));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlane()
  {
    _TDispID _dispid(/* GetPlane */ DISPID(13));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPlane(LPDISPATCH plane)
  {
    _TDispID _dispid(/* SetPlane */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = plane /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetLocation(double* x, double* y)
  {
    _TDispID _dispid(/* GetLocation */ DISPID(15));
    TAutoArgs<2> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetLocation(double x, double y)
  {
    _TDispID _dispid(/* SetLocation */ DISPID(16));
    TAutoArgs<2> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetHeightObject()
  {
    _TDispID _dispid(/* GetHeightObject */ DISPID(17));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetHeightObject(LPDISPATCH heightObject)
  {
    _TDispID _dispid(/* SetHeightObject */ DISPID(18));
    TAutoArgs<1> _args;
    _args[1] = heightObject /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetDiamObject()
  {
    _TDispID _dispid(/* GetDiamObject */ DISPID(19));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetDiamObject(LPDISPATCH diamObject)
  {
    _TDispID _dispid(/* SetDiamObject */ DISPID(20));
    TAutoArgs<1> _args;
    _args[1] = diamObject /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSketch()
  {
    _TDispID _dispid(/* GetSketch */ DISPID(21));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          turn = {read = get_turn, write = set_turn};
  __property   double          step = {read = get_step, write = set_step};
  __property   TOLEBOOL        turnDir = {read = get_turnDir, write = set_turnDir};
  __property   short           buildMode = {read = get_buildMode, write = set_buildMode};
  __property   TOLEBOOL        buildDir = {read = get_buildDir, write = set_buildDir};
  __property   double          height = {read = get_height, write = set_height};
  __property   short           heightType = {read = get_heightType, write = set_heightType};
  __property   double          heightAdd = {read = get_heightAdd, write = set_heightAdd};
  __property   TOLEBOOL        heightAddHow = {read = get_heightAddHow, write = set_heightAddHow};
  __property   double          diam = {read = get_diam, write = set_diam};
  __property   short           diamType = {read = get_diamType, write = set_diamType};
  __property   double          firstAngle = {read = get_firstAngle, write = set_firstAngle};
};
// *********************************************************************//
// Interface: ksPolyLineDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BBA2-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksPolyLineDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_closed(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* closed */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_closed()
  {
    _TDispID _dispid(/* closed */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_vertexVisible(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* vertexVisible */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_vertexVisible()
  {
    _TDispID _dispid(/* vertexVisible */ DISPID(13));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetCountVertex()
  {
    _TDispID _dispid(/* GetCountVertex */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall AddVertex(double x, double y, double z, double radius)
  {
    _TDispID _dispid(/* AddVertex */ DISPID(3));
    TAutoArgs<4> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = z /*[VT_R8:0]*/;
    _args[4] = radius /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall InsertVertex(long index, double x, double y, double z, double radius)
  {
    _TDispID _dispid(/* InsertVertex */ DISPID(4));
    TAutoArgs<5> _args;
    _args[1] = index /*[VT_I4:0]*/;
    _args[2] = x /*[VT_R8:0]*/;
    _args[3] = y /*[VT_R8:0]*/;
    _args[4] = z /*[VT_R8:0]*/;
    _args[5] = radius /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DeleteVertex(long index)
  {
    _TDispID _dispid(/* DeleteVertex */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetParamVertex(long index, double* x, double* y, double* z, double* radius)
  {
    _TDispID _dispid(/* GetParamVertex */ DISPID(6));
    TAutoArgs<5> _args;
    _args[1] = index /*[VT_I4:0]*/;
    _args[2] = x /*[VT_R8:1]*/;
    _args[3] = y /*[VT_R8:1]*/;
    _args[4] = z /*[VT_R8:1]*/;
    _args[5] = radius /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Flush()
  {
    _TDispID _dispid(/* Flush */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ReadFromFile(BSTR fileName)
  {
    _TDispID _dispid(/* ReadFromFile */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall WriteToFile(BSTR fileName)
  {
    _TDispID _dispid(/* WriteToFile */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall EdgeCollection()
  {
    _TDispID _dispid(/* EdgeCollection */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  Kompas6api5_tlb::ksPolyLineVertexParamPtr __fastcall AddPointWithParams(long index)
  {
    _TDispID _dispid(/* AddPointWithParams */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksPolyLineVertexParam* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  Kompas6api5_tlb::ksPolyLineVertexParamPtr __fastcall GetPointParams(long index)
  {
    _TDispID _dispid(/* GetPointParams */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksPolyLineVertexParam* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }


  __property   TOLEBOOL        closed = {read = get_closed, write = set_closed};
  __property   TOLEBOOL        vertexVisible = {read = get_vertexVisible, write = set_vertexVisible};
};
// *********************************************************************//
// Interface: ksPolyLineVertexParam
// Flags:     (4096) Dispatchable
// GUID:      {1BCC4F0F-1091-41A3-895B-0608D20715B7}
// *********************************************************************//
interface ksPolyLineVertexParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_buildingType(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* buildingType */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_buildingType()
  {
    _TDispID _dispid(/* buildingType */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetParamVertex(double* x, double* y, double* z, double* radius)
  {
    _TDispID _dispid(/* GetParamVertex */ DISPID(2));
    TAutoArgs<4> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    _args[3] = z /*[VT_R8:1]*/;
    _args[4] = radius /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetParamVertex(double x, double y, double z, double radius)
  {
    _TDispID _dispid(/* SetParamVertex */ DISPID(3));
    TAutoArgs<4> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = z /*[VT_R8:0]*/;
    _args[4] = radius /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetParamByVertex(Kompas6api5_tlb::ksEntityPtr vertex, double radius)
  {
    _TDispID _dispid(/* SetParamByVertex */ DISPID(4));
    TAutoArgs<2> _args;
    _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksEntity*)vertex /*[VT_USERDEFINED:1]*/;
    _args[2] = radius /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetParamByDistance(double* distance, double* radius)
  {
    _TDispID _dispid(/* GetParamByDistance */ DISPID(5));
    TAutoArgs<2> _args;
    _args[1] = distance /*[VT_R8:1]*/;
    _args[2] = radius /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetParamByDistance(double distance, double radius)
  {
    _TDispID _dispid(/* SetParamByDistance */ DISPID(6));
    TAutoArgs<2> _args;
    _args[1] = distance /*[VT_R8:0]*/;
    _args[2] = radius /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  Kompas6api5_tlb::ksEntityPtr __fastcall GetBuildingObject()
  {
    _TDispID _dispid(/* GetBuildingObject */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksEntity* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetBuildingObject(Kompas6api5_tlb::ksEntityPtr object)
  {
    _TDispID _dispid(/* SetBuildingObject */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksEntity*)object /*[VT_USERDEFINED:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  Kompas6api5_tlb::ksEntityPtr __fastcall GetAssociation()
  {
    _TDispID _dispid(/* GetAssociation */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksEntity* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetAssociation(Kompas6api5_tlb::ksEntityPtr vertex)
  {
    _TDispID _dispid(/* SetAssociation */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksEntity*)vertex /*[VT_USERDEFINED:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  Kompas6api5_tlb::ksEntityPtr __fastcall GetVertex()
  {
    _TDispID _dispid(/* GetVertex */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksEntity* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  int __fastcall GetIndex()
  {
    _TDispID _dispid(/* GetIndex */ DISPID(12));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            buildingType = {read = get_buildingType, write = set_buildingType};
};
// *********************************************************************//
// Interface: ksSplineDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BBA5-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksSplineDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_closed(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* closed */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_closed()
  {
    _TDispID _dispid(/* closed */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_splineOnPoles(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* splineOnPoles */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_splineOnPoles()
  {
    _TDispID _dispid(/* splineOnPoles */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_degree(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* degree */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_degree()
  {
    _TDispID _dispid(/* degree */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetCountVertex()
  {
    _TDispID _dispid(/* GetCountVertex */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall AddVertex(double x, double y, double z, double radius)
  {
    _TDispID _dispid(/* AddVertex */ DISPID(5));
    TAutoArgs<4> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = z /*[VT_R8:0]*/;
    _args[4] = radius /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall InsertVertex(long index, double x, double y, double z, double weight)
  {
    _TDispID _dispid(/* InsertVertex */ DISPID(6));
    TAutoArgs<5> _args;
    _args[1] = index /*[VT_I4:0]*/;
    _args[2] = x /*[VT_R8:0]*/;
    _args[3] = y /*[VT_R8:0]*/;
    _args[4] = z /*[VT_R8:0]*/;
    _args[5] = weight /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DeleteVertex(long index)
  {
    _TDispID _dispid(/* DeleteVertex */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetParamVertex(long index, double* x, double* y, double* z, double* weight)
  {
    _TDispID _dispid(/* GetParamVertex */ DISPID(8));
    TAutoArgs<5> _args;
    _args[1] = index /*[VT_I4:0]*/;
    _args[2] = x /*[VT_R8:1]*/;
    _args[3] = y /*[VT_R8:1]*/;
    _args[4] = z /*[VT_R8:1]*/;
    _args[5] = weight /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Flush()
  {
    _TDispID _dispid(/* Flush */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ReadFromFile(BSTR fileName)
  {
    _TDispID _dispid(/* ReadFromFile */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall WriteToFile(BSTR fileName)
  {
    _TDispID _dispid(/* WriteToFile */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = fileName /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall AddVertexAndAssociation(long index, LPDISPATCH obj, double weight)
  {
    _TDispID _dispid(/* AddVertexAndAssociation */ DISPID(12));
    TAutoArgs<3> _args;
    _args[1] = index /*[VT_I4:0]*/;
    _args[2] = obj /*[VT_DISPATCH:0]*/;
    _args[3] = weight /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetAssociation(long index, LPDISPATCH obj)
  {
    _TDispID _dispid(/* SetAssociation */ DISPID(13));
    TAutoArgs<2> _args;
    _args[1] = index /*[VT_I4:0]*/;
    _args[2] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetAssociation(long index)
  {
    _TDispID _dispid(/* GetAssociation */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        closed = {read = get_closed, write = set_closed};
  __property   TOLEBOOL        splineOnPoles = {read = get_splineOnPoles, write = set_splineOnPoles};
  __property   long            degree = {read = get_degree, write = set_degree};
};
// *********************************************************************//
// Interface: ksBaseExtrusionDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFE1-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksBaseExtrusionDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_directionType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* directionType */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_directionType()
  {
    _TDispID _dispid(/* directionType */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSketch(LPDISPATCH sketch)
  {
    _TDispID _dispid(/* SetSketch */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = sketch /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSketch()
  {
    _TDispID _dispid(/* GetSketch */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetSideParam(TOLEBOOL side1, short* type, double* depth, double* draftValue, 
                                   TOLEBOOL* draftOutward)
  {
    _TDispID _dispid(/* GetSideParam */ DISPID(4));
    TAutoArgs<5> _args;
    _args[1] = side1 /*[VT_BOOL:0]*/;
    _args[2] = type /*[VT_I2:1]*/;
    _args[3] = depth /*[VT_R8:1]*/;
    _args[4] = draftValue /*[VT_R8:1]*/;
    _args[5] = draftOutward /*[VT_BOOL:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSideParam(TOLEBOOL side1, short type/*[def,opt]*/, 
                                   double depth/*[def,opt]*/, double draftValue/*[def,opt]*/, 
                                   TOLEBOOL draftOutward/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetSideParam */ DISPID(5));
    TAutoArgs<5> _args;
    _args[1] = side1 /*[VT_BOOL:0]*/;
    _args[2] = type /*[VT_I2:0]*/;
    _args[3] = depth /*[VT_R8:0]*/;
    _args[4] = draftValue /*[VT_R8:0]*/;
    _args[5] = draftOutward /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                   double* reverseTthickness)
  {
    _TDispID _dispid(/* GetThinParam */ DISPID(6));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:1]*/;
    _args[2] = thinType /*[VT_I2:1]*/;
    _args[3] = normalThickness /*[VT_R8:1]*/;
    _args[4] = reverseTthickness /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                   double normalThickness/*[def,opt]*/, 
                                   double reverseThickness/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetThinParam */ DISPID(7));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:0]*/;
    _args[2] = thinType /*[VT_I2:0]*/;
    _args[3] = normalThickness /*[VT_R8:0]*/;
    _args[4] = reverseThickness /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ThinParam()
  {
    _TDispID _dispid(/* ThinParam */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ExtrusionParam()
  {
    _TDispID _dispid(/* ExtrusionParam */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetDepthObject(TOLEBOOL normal)
  {
    _TDispID _dispid(/* GetDepthObject */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = normal /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetDepthObject(TOLEBOOL normal, LPDISPATCH obj)
  {
    _TDispID _dispid(/* SetDepthObject */ DISPID(11));
    TAutoArgs<2> _args;
    _args[1] = normal /*[VT_BOOL:0]*/;
    _args[2] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ResetDepthObject(TOLEBOOL normal)
  {
    _TDispID _dispid(/* ResetDepthObject */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = normal /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           directionType = {read = get_directionType, write = set_directionType};
};
// *********************************************************************//
// Interface: ksBossExtrusionDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFE4-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksBossExtrusionDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_directionType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* directionType */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_directionType()
  {
    _TDispID _dispid(/* directionType */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSketch(LPDISPATCH sketch)
  {
    _TDispID _dispid(/* SetSketch */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = sketch /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSketch()
  {
    _TDispID _dispid(/* GetSketch */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetSideParam(TOLEBOOL side1, short* type, double* depth, double* draftValue, 
                                   TOLEBOOL* draftOutward)
  {
    _TDispID _dispid(/* GetSideParam */ DISPID(4));
    TAutoArgs<5> _args;
    _args[1] = side1 /*[VT_BOOL:0]*/;
    _args[2] = type /*[VT_I2:1]*/;
    _args[3] = depth /*[VT_R8:1]*/;
    _args[4] = draftValue /*[VT_R8:1]*/;
    _args[5] = draftOutward /*[VT_BOOL:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSideParam(TOLEBOOL side1, short type/*[def,opt]*/, 
                                   double depth/*[def,opt]*/, double draftValue/*[def,opt]*/, 
                                   TOLEBOOL draftOutward/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetSideParam */ DISPID(5));
    TAutoArgs<5> _args;
    _args[1] = side1 /*[VT_BOOL:0]*/;
    _args[2] = type /*[VT_I2:0]*/;
    _args[3] = depth /*[VT_R8:0]*/;
    _args[4] = draftValue /*[VT_R8:0]*/;
    _args[5] = draftOutward /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                   double* reverseTthickness)
  {
    _TDispID _dispid(/* GetThinParam */ DISPID(6));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:1]*/;
    _args[2] = thinType /*[VT_I2:1]*/;
    _args[3] = normalThickness /*[VT_R8:1]*/;
    _args[4] = reverseTthickness /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                   double normalThickness/*[def,opt]*/, 
                                   double reverseThickness/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetThinParam */ DISPID(7));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:0]*/;
    _args[2] = thinType /*[VT_I2:0]*/;
    _args[3] = normalThickness /*[VT_R8:0]*/;
    _args[4] = reverseThickness /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ThinParam()
  {
    _TDispID _dispid(/* ThinParam */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ExtrusionParam()
  {
    _TDispID _dispid(/* ExtrusionParam */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetDepthObject(TOLEBOOL normal)
  {
    _TDispID _dispid(/* GetDepthObject */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = normal /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetDepthObject(TOLEBOOL normal, LPDISPATCH obj)
  {
    _TDispID _dispid(/* SetDepthObject */ DISPID(11));
    TAutoArgs<2> _args;
    _args[1] = normal /*[VT_BOOL:0]*/;
    _args[2] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ResetDepthObject(TOLEBOOL normal)
  {
    _TDispID _dispid(/* ResetDepthObject */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = normal /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ChooseBodies()
  {
    _TDispID _dispid(/* ChooseBodies */ DISPID(13));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           directionType = {read = get_directionType, write = set_directionType};
};
// *********************************************************************//
// Interface: ksCutExtrusionDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFE7-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksCutExtrusionDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_directionType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* directionType */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_directionType()
  {
    _TDispID _dispid(/* directionType */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_cut(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* cut */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_cut()
  {
    _TDispID _dispid(/* cut */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_chooseType(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* chooseType */ DISPID(15));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_chooseType()
  {
    _TDispID _dispid(/* chooseType */ DISPID(15));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSketch(LPDISPATCH sketch)
  {
    _TDispID _dispid(/* SetSketch */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = sketch /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSketch()
  {
    _TDispID _dispid(/* GetSketch */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetSideParam(TOLEBOOL side1, short* type, double* depth, double* draftValue, 
                                   TOLEBOOL* draftOutward)
  {
    _TDispID _dispid(/* GetSideParam */ DISPID(5));
    TAutoArgs<5> _args;
    _args[1] = side1 /*[VT_BOOL:0]*/;
    _args[2] = type /*[VT_I2:1]*/;
    _args[3] = depth /*[VT_R8:1]*/;
    _args[4] = draftValue /*[VT_R8:1]*/;
    _args[5] = draftOutward /*[VT_BOOL:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSideParam(TOLEBOOL side1, short type/*[def,opt]*/, 
                                   double depth/*[def,opt]*/, double draftValue/*[def,opt]*/, 
                                   TOLEBOOL draftOutward/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetSideParam */ DISPID(6));
    TAutoArgs<5> _args;
    _args[1] = side1 /*[VT_BOOL:0]*/;
    _args[2] = type /*[VT_I2:0]*/;
    _args[3] = depth /*[VT_R8:0]*/;
    _args[4] = draftValue /*[VT_R8:0]*/;
    _args[5] = draftOutward /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                   double* reverseTthickness)
  {
    _TDispID _dispid(/* GetThinParam */ DISPID(7));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:1]*/;
    _args[2] = thinType /*[VT_I2:1]*/;
    _args[3] = normalThickness /*[VT_R8:1]*/;
    _args[4] = reverseTthickness /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                   double normalThickness/*[def,opt]*/, 
                                   double reverseThickness/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetThinParam */ DISPID(8));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:0]*/;
    _args[2] = thinType /*[VT_I2:0]*/;
    _args[3] = normalThickness /*[VT_R8:0]*/;
    _args[4] = reverseThickness /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ThinParam()
  {
    _TDispID _dispid(/* ThinParam */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ExtrusionParam()
  {
    _TDispID _dispid(/* ExtrusionParam */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetDepthObject(TOLEBOOL normal)
  {
    _TDispID _dispid(/* GetDepthObject */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = normal /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetDepthObject(TOLEBOOL normal, LPDISPATCH obj)
  {
    _TDispID _dispid(/* SetDepthObject */ DISPID(12));
    TAutoArgs<2> _args;
    _args[1] = normal /*[VT_BOOL:0]*/;
    _args[2] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ResetDepthObject(TOLEBOOL normal)
  {
    _TDispID _dispid(/* ResetDepthObject */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = normal /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ChooseBodies()
  {
    _TDispID _dispid(/* ChooseBodies */ DISPID(14));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ChooseParts()
  {
    _TDispID _dispid(/* ChooseParts */ DISPID(16));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           directionType = {read = get_directionType, write = set_directionType};
  __property   TOLEBOOL        cut = {read = get_cut, write = set_cut};
  __property   long            chooseType = {read = get_chooseType, write = set_chooseType};
};
// *********************************************************************//
// Interface: ksExtrusionSurfaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {B20E24C3-5E4A-4CDA-A1ED-6BB8EBC81A29}
// *********************************************************************//
interface ksExtrusionSurfaceDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_directionType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* directionType */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_directionType()
  {
    _TDispID _dispid(/* directionType */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_closedShell(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* closedShell */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_closedShell()
  {
    _TDispID _dispid(/* closedShell */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSketch(LPDISPATCH sketch)
  {
    _TDispID _dispid(/* SetSketch */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = sketch /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSketch()
  {
    _TDispID _dispid(/* GetSketch */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetSideParam(TOLEBOOL side1, short* type, double* depth, double* draftValue, 
                                   TOLEBOOL* draftOutward)
  {
    _TDispID _dispid(/* GetSideParam */ DISPID(5));
    TAutoArgs<5> _args;
    _args[1] = side1 /*[VT_BOOL:0]*/;
    _args[2] = type /*[VT_I2:1]*/;
    _args[3] = depth /*[VT_R8:1]*/;
    _args[4] = draftValue /*[VT_R8:1]*/;
    _args[5] = draftOutward /*[VT_BOOL:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSideParam(TOLEBOOL side1, short type/*[def,opt]*/, 
                                   double depth/*[def,opt]*/, double draftValue/*[def,opt]*/, 
                                   TOLEBOOL draftOutward/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetSideParam */ DISPID(6));
    TAutoArgs<5> _args;
    _args[1] = side1 /*[VT_BOOL:0]*/;
    _args[2] = type /*[VT_I2:0]*/;
    _args[3] = depth /*[VT_R8:0]*/;
    _args[4] = draftValue /*[VT_R8:0]*/;
    _args[5] = draftOutward /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ExtrusionParam()
  {
    _TDispID _dispid(/* ExtrusionParam */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetDepthObject(TOLEBOOL normal)
  {
    _TDispID _dispid(/* GetDepthObject */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = normal /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetDepthObject(TOLEBOOL normal, LPDISPATCH obj)
  {
    _TDispID _dispid(/* SetDepthObject */ DISPID(9));
    TAutoArgs<2> _args;
    _args[1] = normal /*[VT_BOOL:0]*/;
    _args[2] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ResetDepthObject(TOLEBOOL normal)
  {
    _TDispID _dispid(/* ResetDepthObject */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = normal /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           directionType = {read = get_directionType, write = set_directionType};
  __property   short           closedShell = {read = get_closedShell, write = set_closedShell};
};
// *********************************************************************//
// Interface: ksFaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BBA8-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksFaceDefinition : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall IsPlanar()
  {
    _TDispID _dispid(/* IsPlanar */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsCone()
  {
    _TDispID _dispid(/* IsCone */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsCylinder()
  {
    _TDispID _dispid(/* IsCylinder */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetCylinderParam(double* h, double* r)
  {
    _TDispID _dispid(/* GetCylinderParam */ DISPID(4));
    TAutoArgs<2> _args;
    _args[1] = h /*[VT_R8:1]*/;
    _args[2] = r /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetOwnerEntity()
  {
    _TDispID _dispid(/* GetOwnerEntity */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSurface()
  {
    _TDispID _dispid(/* GetSurface */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall LoopCollection()
  {
    _TDispID _dispid(/* LoopCollection */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall get_normalOrientation()
  {
    _TDispID _dispid(/* normalOrientation */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsConnectedWith(LPDISPATCH faceDefinition)
  {
    _TDispID _dispid(/* IsConnectedWith */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = faceDefinition /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ConnectedFaceCollection()
  {
    _TDispID _dispid(/* ConnectedFaceCollection */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall EdgeCollection()
  {
    _TDispID _dispid(/* EdgeCollection */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetNextFace()
  {
    _TDispID _dispid(/* GetNextFace */ DISPID(12));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsTorus()
  {
    _TDispID _dispid(/* IsTorus */ DISPID(13));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsSphere()
  {
    _TDispID _dispid(/* IsSphere */ DISPID(14));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsNurbsSurface()
  {
    _TDispID _dispid(/* IsNurbsSurface */ DISPID(15));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsRevolved()
  {
    _TDispID _dispid(/* IsRevolved */ DISPID(16));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsSwept()
  {
    _TDispID _dispid(/* IsSwept */ DISPID(17));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetTessellation()
  {
    _TDispID _dispid(/* GetTessellation */ DISPID(18));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetArea(unsigned_long bitVector)
  {
    _TDispID _dispid(/* GetArea */ DISPID(19));
    TAutoArgs<1> _args;
    _args[1] = bitVector /*[VT_UI4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetEntity()
  {
    _TDispID _dispid(/* GetEntity */ DISPID(20));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsValid()
  {
    _TDispID _dispid(/* IsValid */ DISPID(21));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        normalOrientation = {read = get_normalOrientation};
};
// *********************************************************************//
// Interface: ksEdgeDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BBAB-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksEdgeDefinition : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall IsStraight()
  {
    _TDispID _dispid(/* IsStraight */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetOwnerEntity()
  {
    _TDispID _dispid(/* GetOwnerEntity */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetCurve3D()
  {
    _TDispID _dispid(/* GetCurve3D */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetAdjacentFace(TOLEBOOL facePlus)
  {
    _TDispID _dispid(/* GetAdjacentFace */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = facePlus /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetVertex(TOLEBOOL start)
  {
    _TDispID _dispid(/* GetVertex */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = start /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall EdgeCollection(TOLEBOOL begin)
  {
    _TDispID _dispid(/* EdgeCollection */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = begin /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall OrientedEdgeCollection()
  {
    _TDispID _dispid(/* OrientedEdgeCollection */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsArc()
  {
    _TDispID _dispid(/* IsArc */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsCircle()
  {
    _TDispID _dispid(/* IsCircle */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsEllipse()
  {
    _TDispID _dispid(/* IsEllipse */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsNurbs()
  {
    _TDispID _dispid(/* IsNurbs */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsPeriodic()
  {
    _TDispID _dispid(/* IsPeriodic */ DISPID(12));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetLength(unsigned_long bitVector)
  {
    _TDispID _dispid(/* GetLength */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = bitVector /*[VT_UI4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetEntity()
  {
    _TDispID _dispid(/* GetEntity */ DISPID(14));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsValid()
  {
    _TDispID _dispid(/* IsValid */ DISPID(15));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksChamferDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BBAE-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksChamferDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_tangent(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* tangent */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_tangent()
  {
    _TDispID _dispid(/* tangent */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetChamferParam(TOLEBOOL* transfer, double* distance1, double* distance2)
  {
    _TDispID _dispid(/* GetChamferParam */ DISPID(2));
    TAutoArgs<3> _args;
    _args[1] = transfer /*[VT_BOOL:1]*/;
    _args[2] = distance1 /*[VT_R8:1]*/;
    _args[3] = distance2 /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetChamferParam(TOLEBOOL transfer, double distance1, double distance2)
  {
    _TDispID _dispid(/* SetChamferParam */ DISPID(3));
    TAutoArgs<3> _args;
    _args[1] = transfer /*[VT_BOOL:0]*/;
    _args[2] = distance1 /*[VT_R8:0]*/;
    _args[3] = distance2 /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall array()
  {
    _TDispID _dispid(/* array */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        tangent = {read = get_tangent, write = set_tangent};
};
// *********************************************************************//
// Interface: ksFilletDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BBB1-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksFilletDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_radius(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* radius */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_radius()
  {
    _TDispID _dispid(/* radius */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_tangent(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* tangent */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_tangent()
  {
    _TDispID _dispid(/* tangent */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall array()
  {
    _TDispID _dispid(/* array */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          radius = {read = get_radius, write = set_radius};
  __property   TOLEBOOL        tangent = {read = get_tangent, write = set_tangent};
};
// *********************************************************************//
// Interface: ksBaseLoftDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFEA-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksBaseLoftDefinition : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall GetLoftParam(TOLEBOOL* closed, TOLEBOOL* flipVertex, TOLEBOOL* autoPath)
  {
    _TDispID _dispid(/* GetLoftParam */ DISPID(1));
    TAutoArgs<3> _args;
    _args[1] = closed /*[VT_BOOL:1]*/;
    _args[2] = flipVertex /*[VT_BOOL:1]*/;
    _args[3] = autoPath /*[VT_BOOL:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetLoftParam(TOLEBOOL closed, TOLEBOOL flipVertex, TOLEBOOL autoPath)
  {
    _TDispID _dispid(/* SetLoftParam */ DISPID(2));
    TAutoArgs<3> _args;
    _args[1] = closed /*[VT_BOOL:0]*/;
    _args[2] = flipVertex /*[VT_BOOL:0]*/;
    _args[3] = autoPath /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                   double* reverseTthickness)
  {
    _TDispID _dispid(/* GetThinParam */ DISPID(3));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:1]*/;
    _args[2] = thinType /*[VT_I2:1]*/;
    _args[3] = normalThickness /*[VT_R8:1]*/;
    _args[4] = reverseTthickness /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                   double normalThickness/*[def,opt]*/, 
                                   double reverseThickness/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetThinParam */ DISPID(4));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:0]*/;
    _args[2] = thinType /*[VT_I2:0]*/;
    _args[3] = normalThickness /*[VT_R8:0]*/;
    _args[4] = reverseThickness /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ThinParam()
  {
    _TDispID _dispid(/* ThinParam */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Sketchs()
  {
    _TDispID _dispid(/* Sketchs */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksBossLoftDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFED-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksBossLoftDefinition : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall GetLoftParam(TOLEBOOL* closed, TOLEBOOL* flipVertex, TOLEBOOL* autoPath)
  {
    _TDispID _dispid(/* GetLoftParam */ DISPID(1));
    TAutoArgs<3> _args;
    _args[1] = closed /*[VT_BOOL:1]*/;
    _args[2] = flipVertex /*[VT_BOOL:1]*/;
    _args[3] = autoPath /*[VT_BOOL:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetLoftParam(TOLEBOOL closed, TOLEBOOL flipVertex, TOLEBOOL autoPath)
  {
    _TDispID _dispid(/* SetLoftParam */ DISPID(2));
    TAutoArgs<3> _args;
    _args[1] = closed /*[VT_BOOL:0]*/;
    _args[2] = flipVertex /*[VT_BOOL:0]*/;
    _args[3] = autoPath /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                   double* reverseTthickness)
  {
    _TDispID _dispid(/* GetThinParam */ DISPID(3));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:1]*/;
    _args[2] = thinType /*[VT_I2:1]*/;
    _args[3] = normalThickness /*[VT_R8:1]*/;
    _args[4] = reverseTthickness /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                   double normalThickness/*[def,opt]*/, 
                                   double reverseThickness/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetThinParam */ DISPID(4));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:0]*/;
    _args[2] = thinType /*[VT_I2:0]*/;
    _args[3] = normalThickness /*[VT_R8:0]*/;
    _args[4] = reverseThickness /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ThinParam()
  {
    _TDispID _dispid(/* ThinParam */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Sketchs()
  {
    _TDispID _dispid(/* Sketchs */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ChooseBodies()
  {
    _TDispID _dispid(/* ChooseBodies */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetDirectionalLine()
  {
    _TDispID _dispid(/* GetDirectionalLine */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetDirectionalLine(LPDISPATCH sketch)
  {
    _TDispID _dispid(/* SetDirectionalLine */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = sketch /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksCutLoftDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFF0-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksCutLoftDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_cut(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* cut */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_cut()
  {
    _TDispID _dispid(/* cut */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_chooseType(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* chooseType */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_chooseType()
  {
    _TDispID _dispid(/* chooseType */ DISPID(11));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetLoftParam(TOLEBOOL* closed, TOLEBOOL* flipVertex, TOLEBOOL* autoPath)
  {
    _TDispID _dispid(/* GetLoftParam */ DISPID(2));
    TAutoArgs<3> _args;
    _args[1] = closed /*[VT_BOOL:1]*/;
    _args[2] = flipVertex /*[VT_BOOL:1]*/;
    _args[3] = autoPath /*[VT_BOOL:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetLoftParam(TOLEBOOL closed, TOLEBOOL flipVertex, TOLEBOOL autoPath)
  {
    _TDispID _dispid(/* SetLoftParam */ DISPID(3));
    TAutoArgs<3> _args;
    _args[1] = closed /*[VT_BOOL:0]*/;
    _args[2] = flipVertex /*[VT_BOOL:0]*/;
    _args[3] = autoPath /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                   double* reverseTthickness)
  {
    _TDispID _dispid(/* GetThinParam */ DISPID(4));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:1]*/;
    _args[2] = thinType /*[VT_I2:1]*/;
    _args[3] = normalThickness /*[VT_R8:1]*/;
    _args[4] = reverseTthickness /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                   double normalThickness/*[def,opt]*/, 
                                   double reverseThickness/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetThinParam */ DISPID(5));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:0]*/;
    _args[2] = thinType /*[VT_I2:0]*/;
    _args[3] = normalThickness /*[VT_R8:0]*/;
    _args[4] = reverseThickness /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ThinParam()
  {
    _TDispID _dispid(/* ThinParam */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Sketchs()
  {
    _TDispID _dispid(/* Sketchs */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ChooseBodies()
  {
    _TDispID _dispid(/* ChooseBodies */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetDirectionalLine()
  {
    _TDispID _dispid(/* GetDirectionalLine */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetDirectionalLine(LPDISPATCH sketch)
  {
    _TDispID _dispid(/* SetDirectionalLine */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = sketch /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ChooseParts()
  {
    _TDispID _dispid(/* ChooseParts */ DISPID(12));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        cut = {read = get_cut, write = set_cut};
  __property   long            chooseType = {read = get_chooseType, write = set_chooseType};
};
// *********************************************************************//
// Interface: ksLoftSurfaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {E04339B5-AA08-4717-8E50-90ED0E375624}
// *********************************************************************//
interface ksLoftSurfaceDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_closedShell(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* closedShell */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_closedShell()
  {
    _TDispID _dispid(/* closedShell */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetLoftParam(TOLEBOOL* closed, TOLEBOOL* flipVertex, TOLEBOOL* autoPath)
  {
    _TDispID _dispid(/* GetLoftParam */ DISPID(2));
    TAutoArgs<3> _args;
    _args[1] = closed /*[VT_BOOL:1]*/;
    _args[2] = flipVertex /*[VT_BOOL:1]*/;
    _args[3] = autoPath /*[VT_BOOL:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetLoftParam(TOLEBOOL closed, TOLEBOOL flipVertex, TOLEBOOL autoPath)
  {
    _TDispID _dispid(/* SetLoftParam */ DISPID(3));
    TAutoArgs<3> _args;
    _args[1] = closed /*[VT_BOOL:0]*/;
    _args[2] = flipVertex /*[VT_BOOL:0]*/;
    _args[3] = autoPath /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Sketchs()
  {
    _TDispID _dispid(/* Sketchs */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           closedShell = {read = get_closedShell, write = set_closedShell};
};
// *********************************************************************//
// Interface: ksInclineDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFF3-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksInclineDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_angle(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angle */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angle()
  {
    _TDispID _dispid(/* angle */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_direction(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* direction */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_direction()
  {
    _TDispID _dispid(/* direction */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall FaceArray()
  {
    _TDispID _dispid(/* FaceArray */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlane()
  {
    _TDispID _dispid(/* GetPlane */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPlane(LPDISPATCH plane)
  {
    _TDispID _dispid(/* SetPlane */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = plane /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          angle = {read = get_angle, write = set_angle};
  __property   TOLEBOOL        direction = {read = get_direction, write = set_direction};
};
// *********************************************************************//
// Interface: ksShellDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFF6-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksShellDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_thickness(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* thickness */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_thickness()
  {
    _TDispID _dispid(/* thickness */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_thinType(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* thinType */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_thinType()
  {
    _TDispID _dispid(/* thinType */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall FaceArray()
  {
    _TDispID _dispid(/* FaceArray */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          thickness = {read = get_thickness, write = set_thickness};
  __property   TOLEBOOL        thinType = {read = get_thinType, write = set_thinType};
};
// *********************************************************************//
// Interface: ksBaseEvolutionDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFF9-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksBaseEvolutionDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_sketchShiftType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* sketchShiftType */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_sketchShiftType()
  {
    _TDispID _dispid(/* sketchShiftType */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSketch(LPDISPATCH sketch)
  {
    _TDispID _dispid(/* SetSketch */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = sketch /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSketch()
  {
    _TDispID _dispid(/* GetSketch */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall PathPartArray()
  {
    _TDispID _dispid(/* PathPartArray */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                   double* reverseTthickness)
  {
    _TDispID _dispid(/* GetThinParam */ DISPID(5));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:1]*/;
    _args[2] = thinType /*[VT_I2:1]*/;
    _args[3] = normalThickness /*[VT_R8:1]*/;
    _args[4] = reverseTthickness /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                   double normalThickness/*[def,opt]*/, 
                                   double reverseThickness/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetThinParam */ DISPID(6));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:0]*/;
    _args[2] = thinType /*[VT_I2:0]*/;
    _args[3] = normalThickness /*[VT_R8:0]*/;
    _args[4] = reverseThickness /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ThinParam()
  {
    _TDispID _dispid(/* ThinParam */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetPathLength(unsigned_long bitVector)
  {
    _TDispID _dispid(/* GetPathLength */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = bitVector /*[VT_UI4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           sketchShiftType = {read = get_sketchShiftType, write = set_sketchShiftType};
};
// *********************************************************************//
// Interface: ksBossEvolutionDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFFC-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksBossEvolutionDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_sketchShiftType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* sketchShiftType */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_sketchShiftType()
  {
    _TDispID _dispid(/* sketchShiftType */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSketch(LPDISPATCH sketch)
  {
    _TDispID _dispid(/* SetSketch */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = sketch /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSketch()
  {
    _TDispID _dispid(/* GetSketch */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall PathPartArray()
  {
    _TDispID _dispid(/* PathPartArray */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                   double* reverseTthickness)
  {
    _TDispID _dispid(/* GetThinParam */ DISPID(5));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:1]*/;
    _args[2] = thinType /*[VT_I2:1]*/;
    _args[3] = normalThickness /*[VT_R8:1]*/;
    _args[4] = reverseTthickness /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                   double normalThickness/*[def,opt]*/, 
                                   double reverseThickness/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetThinParam */ DISPID(6));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:0]*/;
    _args[2] = thinType /*[VT_I2:0]*/;
    _args[3] = normalThickness /*[VT_R8:0]*/;
    _args[4] = reverseThickness /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ThinParam()
  {
    _TDispID _dispid(/* ThinParam */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ChooseBodies()
  {
    _TDispID _dispid(/* ChooseBodies */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetPathLength(unsigned_long bitVector)
  {
    _TDispID _dispid(/* GetPathLength */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = bitVector /*[VT_UI4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           sketchShiftType = {read = get_sketchShiftType, write = set_sketchShiftType};
};
// *********************************************************************//
// Interface: ksCutEvolutionDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFFF-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksCutEvolutionDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_sketchShiftType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* sketchShiftType */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_sketchShiftType()
  {
    _TDispID _dispid(/* sketchShiftType */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_cut(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* cut */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_cut()
  {
    _TDispID _dispid(/* cut */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_chooseType(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* chooseType */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_chooseType()
  {
    _TDispID _dispid(/* chooseType */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSketch(LPDISPATCH sketch)
  {
    _TDispID _dispid(/* SetSketch */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = sketch /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSketch()
  {
    _TDispID _dispid(/* GetSketch */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall PathPartArray()
  {
    _TDispID _dispid(/* PathPartArray */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                   double* reverseTthickness)
  {
    _TDispID _dispid(/* GetThinParam */ DISPID(6));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:1]*/;
    _args[2] = thinType /*[VT_I2:1]*/;
    _args[3] = normalThickness /*[VT_R8:1]*/;
    _args[4] = reverseTthickness /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                   double normalThickness/*[def,opt]*/, 
                                   double reverseThickness/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetThinParam */ DISPID(7));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:0]*/;
    _args[2] = thinType /*[VT_I2:0]*/;
    _args[3] = normalThickness /*[VT_R8:0]*/;
    _args[4] = reverseThickness /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ThinParam()
  {
    _TDispID _dispid(/* ThinParam */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ChooseBodies()
  {
    _TDispID _dispid(/* ChooseBodies */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ChooseParts()
  {
    _TDispID _dispid(/* ChooseParts */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetPathLength(unsigned_long bitVector)
  {
    _TDispID _dispid(/* GetPathLength */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = bitVector /*[VT_UI4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           sketchShiftType = {read = get_sketchShiftType, write = set_sketchShiftType};
  __property   TOLEBOOL        cut = {read = get_cut, write = set_cut};
  __property   long            chooseType = {read = get_chooseType, write = set_chooseType};
};
// *********************************************************************//
// Interface: ksEvolutionSurfaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {2BD4C79E-E2C3-42E8-8FCC-B51FFBDE9F69}
// *********************************************************************//
interface ksEvolutionSurfaceDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_sketchShiftType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* sketchShiftType */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_sketchShiftType()
  {
    _TDispID _dispid(/* sketchShiftType */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_closedShell(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* closedShell */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_closedShell()
  {
    _TDispID _dispid(/* closedShell */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSketch(LPDISPATCH sketch)
  {
    _TDispID _dispid(/* SetSketch */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = sketch /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSketch()
  {
    _TDispID _dispid(/* GetSketch */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall PathPartArray()
  {
    _TDispID _dispid(/* PathPartArray */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetPathLength(unsigned_long bitVector)
  {
    _TDispID _dispid(/* GetPathLength */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = bitVector /*[VT_UI4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           sketchShiftType = {read = get_sketchShiftType, write = set_sketchShiftType};
  __property   TOLEBOOL        closedShell = {read = get_closedShell, write = set_closedShell};
};
// *********************************************************************//
// Interface: ksRibDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF002-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksRibDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_index(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* index */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_index()
  {
    _TDispID _dispid(/* index */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_angle(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angle */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angle()
  {
    _TDispID _dispid(/* angle */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_side(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* side */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_side()
  {
    _TDispID _dispid(/* side */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSketch()
  {
    _TDispID _dispid(/* GetSketch */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSketch(LPDISPATCH sketch)
  {
    _TDispID _dispid(/* SetSketch */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = sketch /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetThinParam(short* thinType, double* normalThickness, 
                                   double* reverseTthickness)
  {
    _TDispID _dispid(/* GetThinParam */ DISPID(6));
    TAutoArgs<3> _args;
    _args[1] = thinType /*[VT_I2:1]*/;
    _args[2] = normalThickness /*[VT_R8:1]*/;
    _args[3] = reverseTthickness /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetThinParam(short thinType/*[def,opt]*/, double normalThickness/*[def,opt]*/
                                   , double reverseThickness/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetThinParam */ DISPID(7));
    TAutoArgs<3> _args;
    _args[1] = thinType /*[VT_I2:0]*/;
    _args[2] = normalThickness /*[VT_R8:0]*/;
    _args[3] = reverseThickness /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ThinParam()
  {
    _TDispID _dispid(/* ThinParam */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            index = {read = get_index, write = set_index};
  __property   double          angle = {read = get_angle, write = set_angle};
  __property   long            side = {read = get_side, write = set_side};
};
// *********************************************************************//
// Interface: ksCutByPlaneDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF005-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksCutByPlaneDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_direction(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* direction */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_direction()
  {
    _TDispID _dispid(/* direction */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_chooseType(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* chooseType */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_chooseType()
  {
    _TDispID _dispid(/* chooseType */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlane()
  {
    _TDispID _dispid(/* GetPlane */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPlane(LPDISPATCH plane)
  {
    _TDispID _dispid(/* SetPlane */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = plane /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ChooseBodies()
  {
    _TDispID _dispid(/* ChooseBodies */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ChooseParts()
  {
    _TDispID _dispid(/* ChooseParts */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        direction = {read = get_direction, write = set_direction};
  __property   long            chooseType = {read = get_chooseType, write = set_chooseType};
};
// *********************************************************************//
// Interface: ksCutBySketchDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF008-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksCutBySketchDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_direction(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* direction */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_direction()
  {
    _TDispID _dispid(/* direction */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_chooseType(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* chooseType */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_chooseType()
  {
    _TDispID _dispid(/* chooseType */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSketch()
  {
    _TDispID _dispid(/* GetSketch */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSketch(LPDISPATCH sketch)
  {
    _TDispID _dispid(/* SetSketch */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = sketch /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ChooseBodies()
  {
    _TDispID _dispid(/* ChooseBodies */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ChooseParts()
  {
    _TDispID _dispid(/* ChooseParts */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        direction = {read = get_direction, write = set_direction};
  __property   long            chooseType = {read = get_chooseType, write = set_chooseType};
};
// *********************************************************************//
// Interface: ksPlaneOffsetDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF00B-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksPlaneOffsetDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_offset(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* offset */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_offset()
  {
    _TDispID _dispid(/* offset */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_direction(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* direction */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_direction()
  {
    _TDispID _dispid(/* direction */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPlane(LPDISPATCH plane)
  {
    _TDispID _dispid(/* SetPlane */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = plane /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlane()
  {
    _TDispID _dispid(/* GetPlane */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSurface()
  {
    _TDispID _dispid(/* GetSurface */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          offset = {read = get_offset, write = set_offset};
  __property   TOLEBOOL        direction = {read = get_direction, write = set_direction};
};
// *********************************************************************//
// Interface: ksPlaneAngleDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF00E-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksPlaneAngleDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_angle(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angle */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angle()
  {
    _TDispID _dispid(/* angle */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPlane(LPDISPATCH plane)
  {
    _TDispID _dispid(/* SetPlane */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = plane /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlane()
  {
    _TDispID _dispid(/* GetPlane */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetAxis(LPDISPATCH axis)
  {
    _TDispID _dispid(/* SetAxis */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = axis /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetAxis()
  {
    _TDispID _dispid(/* GetAxis */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSurface()
  {
    _TDispID _dispid(/* GetSurface */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          angle = {read = get_angle, write = set_angle};
};
// *********************************************************************//
// Interface: ksPlane3PointsDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF011-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksPlane3PointsDefinition : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall SetPoint(long number, LPDISPATCH point)
  {
    _TDispID _dispid(/* SetPoint */ DISPID(1));
    TAutoArgs<2> _args;
    _args[1] = number /*[VT_I4:0]*/;
    _args[2] = point /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPoint(long number)
  {
    _TDispID _dispid(/* GetPoint */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = number /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSurface()
  {
    _TDispID _dispid(/* GetSurface */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksPlaneNormalToSurfaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF014-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksPlaneNormalToSurfaceDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_angle(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angle */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angle()
  {
    _TDispID _dispid(/* angle */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetFace(LPDISPATCH face)
  {
    _TDispID _dispid(/* SetFace */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = face /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetFace()
  {
    _TDispID _dispid(/* GetFace */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPlane(LPDISPATCH plane)
  {
    _TDispID _dispid(/* SetPlane */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = plane /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlane()
  {
    _TDispID _dispid(/* GetPlane */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSurface()
  {
    _TDispID _dispid(/* GetSurface */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          angle = {read = get_angle, write = set_angle};
};
// *********************************************************************//
// Interface: ksPlaneTangentToSurfaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF017-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksPlaneTangentToSurfaceDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_choosePlane(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* choosePlane */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_choosePlane()
  {
    _TDispID _dispid(/* choosePlane */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_angle(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angle */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angle()
  {
    _TDispID _dispid(/* angle */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetFace(LPDISPATCH face)
  {
    _TDispID _dispid(/* SetFace */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = face /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetFace()
  {
    _TDispID _dispid(/* GetFace */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPlane(LPDISPATCH plane)
  {
    _TDispID _dispid(/* SetPlane */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = plane /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlane()
  {
    _TDispID _dispid(/* GetPlane */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSurface()
  {
    _TDispID _dispid(/* GetSurface */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           choosePlane = {read = get_choosePlane, write = set_choosePlane};
  __property   double          angle = {read = get_angle, write = set_angle};
};
// *********************************************************************//
// Interface: ksPlaneEdgePointDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF01A-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksPlaneEdgePointDefinition : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall SetEdge(LPDISPATCH edge)
  {
    _TDispID _dispid(/* SetEdge */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = edge /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetEdge()
  {
    _TDispID _dispid(/* GetEdge */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPoint(LPDISPATCH point)
  {
    _TDispID _dispid(/* SetPoint */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = point /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPoint()
  {
    _TDispID _dispid(/* GetPoint */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSurface()
  {
    _TDispID _dispid(/* GetSurface */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksPlaneParallelDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF01D-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksPlaneParallelDefinition : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall SetPlane(LPDISPATCH plane)
  {
    _TDispID _dispid(/* SetPlane */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = plane /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlane()
  {
    _TDispID _dispid(/* GetPlane */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPoint(LPDISPATCH point)
  {
    _TDispID _dispid(/* SetPoint */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = point /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPoint()
  {
    _TDispID _dispid(/* GetPoint */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSurface()
  {
    _TDispID _dispid(/* GetSurface */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksPlanePerpendicularDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF020-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksPlanePerpendicularDefinition : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall SetEdge(LPDISPATCH edge)
  {
    _TDispID _dispid(/* SetEdge */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = edge /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetEdge()
  {
    _TDispID _dispid(/* GetEdge */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPoint(LPDISPATCH point)
  {
    _TDispID _dispid(/* SetPoint */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = point /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPoint()
  {
    _TDispID _dispid(/* GetPoint */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSurface()
  {
    _TDispID _dispid(/* GetSurface */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksPlaneLineToEdgeDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF023-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksPlaneLineToEdgeDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_parallel(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* parallel */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_parallel()
  {
    _TDispID _dispid(/* parallel */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetEdgeFirst(LPDISPATCH edge1)
  {
    _TDispID _dispid(/* SetEdgeFirst */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = edge1 /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetEdgeFirst()
  {
    _TDispID _dispid(/* GetEdgeFirst */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetEdgeSecond(LPDISPATCH edge2)
  {
    _TDispID _dispid(/* SetEdgeSecond */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = edge2 /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetEdgeSecond()
  {
    _TDispID _dispid(/* GetEdgeSecond */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSurface()
  {
    _TDispID _dispid(/* GetSurface */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        parallel = {read = get_parallel, write = set_parallel};
};
// *********************************************************************//
// Interface: ksPlaneLineToPlaneDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF026-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksPlaneLineToPlaneDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_parallel(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* parallel */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_parallel()
  {
    _TDispID _dispid(/* parallel */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetEdge(LPDISPATCH edge)
  {
    _TDispID _dispid(/* SetEdge */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = edge /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetEdge()
  {
    _TDispID _dispid(/* GetEdge */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPlane(LPDISPATCH plane)
  {
    _TDispID _dispid(/* SetPlane */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = plane /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlane()
  {
    _TDispID _dispid(/* GetPlane */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSurface()
  {
    _TDispID _dispid(/* GetSurface */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        parallel = {read = get_parallel, write = set_parallel};
};
// *********************************************************************//
// Interface: ksThinParam
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF029-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksThinParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_thin(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* thin */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_thin()
  {
    _TDispID _dispid(/* thin */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_thinType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* thinType */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_thinType()
  {
    _TDispID _dispid(/* thinType */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_normalThickness(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* normalThickness */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_normalThickness()
  {
    _TDispID _dispid(/* normalThickness */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_reverseThickness(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* reverseThickness */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_reverseThickness()
  {
    _TDispID _dispid(/* reverseThickness */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        thin = {read = get_thin, write = set_thin};
  __property   short           thinType = {read = get_thinType, write = set_thinType};
  __property   double          normalThickness = {read = get_normalThickness, write = set_normalThickness};
  __property   double          reverseThickness = {read = get_reverseThickness, write = set_reverseThickness};
};
// *********************************************************************//
// Interface: ksExtrusionParam
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF02C-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksExtrusionParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_typeNormal(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* typeNormal */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_typeNormal()
  {
    _TDispID _dispid(/* typeNormal */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_depthNormal(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* depthNormal */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_depthNormal()
  {
    _TDispID _dispid(/* depthNormal */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_draftValueNormal(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* draftValueNormal */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_draftValueNormal()
  {
    _TDispID _dispid(/* draftValueNormal */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_draftOutwardNormal(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* draftOutwardNormal */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_draftOutwardNormal()
  {
    _TDispID _dispid(/* draftOutwardNormal */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_typeReverse(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* typeReverse */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_typeReverse()
  {
    _TDispID _dispid(/* typeReverse */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_depthReverse(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* depthReverse */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_depthReverse()
  {
    _TDispID _dispid(/* depthReverse */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_draftValueReverse(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* draftValueReverse */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_draftValueReverse()
  {
    _TDispID _dispid(/* draftValueReverse */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_draftOutwardReverse(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* draftOutwardReverse */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_draftOutwardReverse()
  {
    _TDispID _dispid(/* draftOutwardReverse */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_direction(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* direction */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_direction()
  {
    _TDispID _dispid(/* direction */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           typeNormal = {read = get_typeNormal, write = set_typeNormal};
  __property   double          depthNormal = {read = get_depthNormal, write = set_depthNormal};
  __property   double          draftValueNormal = {read = get_draftValueNormal, write = set_draftValueNormal};
  __property   TOLEBOOL        draftOutwardNormal = {read = get_draftOutwardNormal, write = set_draftOutwardNormal};
  __property   short           typeReverse = {read = get_typeReverse, write = set_typeReverse};
  __property   double          depthReverse = {read = get_depthReverse, write = set_depthReverse};
  __property   double          draftValueReverse = {read = get_draftValueReverse, write = set_draftValueReverse};
  __property   TOLEBOOL        draftOutwardReverse = {read = get_draftOutwardReverse, write = set_draftOutwardReverse};
  __property   long            direction = {read = get_direction, write = set_direction};
};
// *********************************************************************//
// Interface: ksRotatedParam
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF02F-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksRotatedParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_angleNormal(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angleNormal */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angleNormal()
  {
    _TDispID _dispid(/* angleNormal */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_angleReverse(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angleReverse */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angleReverse()
  {
    _TDispID _dispid(/* angleReverse */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_toroidShape(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* toroidShape */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_toroidShape()
  {
    _TDispID _dispid(/* toroidShape */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_direction(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* direction */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_direction()
  {
    _TDispID _dispid(/* direction */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          angleNormal = {read = get_angleNormal, write = set_angleNormal};
  __property   double          angleReverse = {read = get_angleReverse, write = set_angleReverse};
  __property   TOLEBOOL        toroidShape = {read = get_toroidShape, write = set_toroidShape};
  __property   long            direction = {read = get_direction, write = set_direction};
};
// *********************************************************************//
// Interface: ksColorParam
// Flags:     (4096) Dispatchable
// GUID:      {2DFACC61-C4A4-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksColorParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_color(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* color */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_color()
  {
    _TDispID _dispid(/* color */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_ambient(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* ambient */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_ambient()
  {
    _TDispID _dispid(/* ambient */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_diffuse(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* diffuse */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_diffuse()
  {
    _TDispID _dispid(/* diffuse */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_specularity(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* specularity */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_specularity()
  {
    _TDispID _dispid(/* specularity */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_shininess(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* shininess */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_shininess()
  {
    _TDispID _dispid(/* shininess */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_transparency(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* transparency */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_transparency()
  {
    _TDispID _dispid(/* transparency */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_emission(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* emission */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_emission()
  {
    _TDispID _dispid(/* emission */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Clear()
  {
    _TDispID _dispid(/* Clear */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            color = {read = get_color, write = set_color};
  __property   double          ambient = {read = get_ambient, write = set_ambient};
  __property   double          diffuse = {read = get_diffuse, write = set_diffuse};
  __property   double          specularity = {read = get_specularity, write = set_specularity};
  __property   double          shininess = {read = get_shininess, write = set_shininess};
  __property   double          transparency = {read = get_transparency, write = set_transparency};
  __property   double          emission = {read = get_emission, write = set_emission};
};
// *********************************************************************//
// Interface: ksBaseRotatedDefinition
// Flags:     (4096) Dispatchable
// GUID:      {2DFACC67-C4A4-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksBaseRotatedDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_directionType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* directionType */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_directionType()
  {
    _TDispID _dispid(/* directionType */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_toroidShapeType(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* toroidShapeType */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_toroidShapeType()
  {
    _TDispID _dispid(/* toroidShapeType */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSketch(LPDISPATCH sketch)
  {
    _TDispID _dispid(/* SetSketch */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = sketch /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSketch()
  {
    _TDispID _dispid(/* GetSketch */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetSideParam(TOLEBOOL side1, double* angle)
  {
    _TDispID _dispid(/* GetSideParam */ DISPID(5));
    TAutoArgs<2> _args;
    _args[1] = side1 /*[VT_BOOL:0]*/;
    _args[2] = angle /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSideParam(TOLEBOOL side1/*[def,opt]*/, double angle/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetSideParam */ DISPID(6));
    TAutoArgs<2> _args;
    _args[1] = side1 /*[VT_BOOL:0]*/;
    _args[2] = angle /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                   double* reverseTthickness)
  {
    _TDispID _dispid(/* GetThinParam */ DISPID(7));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:1]*/;
    _args[2] = thinType /*[VT_I2:1]*/;
    _args[3] = normalThickness /*[VT_R8:1]*/;
    _args[4] = reverseTthickness /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                   double normalThickness/*[def,opt]*/, 
                                   double reverseThickness/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetThinParam */ DISPID(8));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:0]*/;
    _args[2] = thinType /*[VT_I2:0]*/;
    _args[3] = normalThickness /*[VT_R8:0]*/;
    _args[4] = reverseThickness /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ThinParam()
  {
    _TDispID _dispid(/* ThinParam */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall RotatedParam()
  {
    _TDispID _dispid(/* RotatedParam */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           directionType = {read = get_directionType, write = set_directionType};
  __property   TOLEBOOL        toroidShapeType = {read = get_toroidShapeType, write = set_toroidShapeType};
};
// *********************************************************************//
// Interface: ksBossRotatedDefinition
// Flags:     (4096) Dispatchable
// GUID:      {2DFACC6A-C4A4-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksBossRotatedDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_directionType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* directionType */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_directionType()
  {
    _TDispID _dispid(/* directionType */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_toroidShapeType(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* toroidShapeType */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_toroidShapeType()
  {
    _TDispID _dispid(/* toroidShapeType */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSketch(LPDISPATCH sketch)
  {
    _TDispID _dispid(/* SetSketch */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = sketch /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSketch()
  {
    _TDispID _dispid(/* GetSketch */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetSideParam(TOLEBOOL side1, double* angle)
  {
    _TDispID _dispid(/* GetSideParam */ DISPID(5));
    TAutoArgs<2> _args;
    _args[1] = side1 /*[VT_BOOL:0]*/;
    _args[2] = angle /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSideParam(TOLEBOOL side1/*[def,opt]*/, double angle/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetSideParam */ DISPID(6));
    TAutoArgs<2> _args;
    _args[1] = side1 /*[VT_BOOL:0]*/;
    _args[2] = angle /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                   double* reverseTthickness)
  {
    _TDispID _dispid(/* GetThinParam */ DISPID(7));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:1]*/;
    _args[2] = thinType /*[VT_I2:1]*/;
    _args[3] = normalThickness /*[VT_R8:1]*/;
    _args[4] = reverseTthickness /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                   double normalThickness/*[def,opt]*/, 
                                   double reverseThickness/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetThinParam */ DISPID(8));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:0]*/;
    _args[2] = thinType /*[VT_I2:0]*/;
    _args[3] = normalThickness /*[VT_R8:0]*/;
    _args[4] = reverseThickness /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ThinParam()
  {
    _TDispID _dispid(/* ThinParam */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall RotatedParam()
  {
    _TDispID _dispid(/* RotatedParam */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ChooseBodies()
  {
    _TDispID _dispid(/* ChooseBodies */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           directionType = {read = get_directionType, write = set_directionType};
  __property   TOLEBOOL        toroidShapeType = {read = get_toroidShapeType, write = set_toroidShapeType};
};
// *********************************************************************//
// Interface: ksCutRotatedDefinition
// Flags:     (4096) Dispatchable
// GUID:      {2DFACC6D-C4A4-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksCutRotatedDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_directionType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* directionType */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_directionType()
  {
    _TDispID _dispid(/* directionType */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_toroidShapeType(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* toroidShapeType */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_toroidShapeType()
  {
    _TDispID _dispid(/* toroidShapeType */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_cut(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* cut */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_cut()
  {
    _TDispID _dispid(/* cut */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_chooseType(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* chooseType */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_chooseType()
  {
    _TDispID _dispid(/* chooseType */ DISPID(13));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSketch(LPDISPATCH sketch)
  {
    _TDispID _dispid(/* SetSketch */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = sketch /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSketch()
  {
    _TDispID _dispid(/* GetSketch */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetSideParam(TOLEBOOL side1, double* angle)
  {
    _TDispID _dispid(/* GetSideParam */ DISPID(6));
    TAutoArgs<2> _args;
    _args[1] = side1 /*[VT_BOOL:0]*/;
    _args[2] = angle /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSideParam(TOLEBOOL side1/*[def,opt]*/, double angle/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetSideParam */ DISPID(7));
    TAutoArgs<2> _args;
    _args[1] = side1 /*[VT_BOOL:0]*/;
    _args[2] = angle /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                   double* reverseTthickness)
  {
    _TDispID _dispid(/* GetThinParam */ DISPID(8));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:1]*/;
    _args[2] = thinType /*[VT_I2:1]*/;
    _args[3] = normalThickness /*[VT_R8:1]*/;
    _args[4] = reverseTthickness /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                   double normalThickness/*[def,opt]*/, 
                                   double reverseThickness/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetThinParam */ DISPID(9));
    TAutoArgs<4> _args;
    _args[1] = thin /*[VT_BOOL:0]*/;
    _args[2] = thinType /*[VT_I2:0]*/;
    _args[3] = normalThickness /*[VT_R8:0]*/;
    _args[4] = reverseThickness /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ThinParam()
  {
    _TDispID _dispid(/* ThinParam */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall RotatedParam()
  {
    _TDispID _dispid(/* RotatedParam */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ChooseBodies()
  {
    _TDispID _dispid(/* ChooseBodies */ DISPID(12));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall ChooseParts()
  {
    _TDispID _dispid(/* ChooseParts */ DISPID(14));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           directionType = {read = get_directionType, write = set_directionType};
  __property   TOLEBOOL        toroidShapeType = {read = get_toroidShapeType, write = set_toroidShapeType};
  __property   TOLEBOOL        cut = {read = get_cut, write = set_cut};
  __property   long            chooseType = {read = get_chooseType, write = set_chooseType};
};
// *********************************************************************//
// Interface: ksRotatedSurfaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {FD27841D-1374-4F7F-AE8A-C2A44F89120D}
// *********************************************************************//
interface ksRotatedSurfaceDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_directionType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* directionType */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_directionType()
  {
    _TDispID _dispid(/* directionType */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_toroidShapeType(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* toroidShapeType */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_toroidShapeType()
  {
    _TDispID _dispid(/* toroidShapeType */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_closedShell(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* closedShell */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_closedShell()
  {
    _TDispID _dispid(/* closedShell */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSketch(LPDISPATCH sketch)
  {
    _TDispID _dispid(/* SetSketch */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = sketch /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSketch()
  {
    _TDispID _dispid(/* GetSketch */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetSideParam(TOLEBOOL side1, double* angle)
  {
    _TDispID _dispid(/* GetSideParam */ DISPID(6));
    TAutoArgs<2> _args;
    _args[1] = side1 /*[VT_BOOL:0]*/;
    _args[2] = angle /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetSideParam(TOLEBOOL side1/*[def,opt]*/, double angle/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetSideParam */ DISPID(7));
    TAutoArgs<2> _args;
    _args[1] = side1 /*[VT_BOOL:0]*/;
    _args[2] = angle /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall RotatedParam()
  {
    _TDispID _dispid(/* RotatedParam */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           directionType = {read = get_directionType, write = set_directionType};
  __property   TOLEBOOL        toroidShapeType = {read = get_toroidShapeType, write = set_toroidShapeType};
  __property   short           closedShell = {read = get_closedShell, write = set_closedShell};
};
// *********************************************************************//
// Interface: ksSketchDefinition
// Flags:     (4096) Dispatchable
// GUID:      {2DFACC70-C4A4-11D6-8734-00C0262CDD2C}
// *********************************************************************//
interface ksSketchDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_angle(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angle */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angle()
  {
    _TDispID _dispid(/* angle */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall EndEdit()
  {
    _TDispID _dispid(/* EndEdit */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPlane(LPDISPATCH plane)
  {
    _TDispID _dispid(/* SetPlane */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = plane /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlane()
  {
    _TDispID _dispid(/* GetPlane */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetLocation(double* x, double* y)
  {
    _TDispID _dispid(/* GetLocation */ DISPID(5));
    TAutoArgs<2> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetLocation(double x/*[def,opt]*/, double y/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetLocation */ DISPID(6));
    TAutoArgs<2> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetLoftPoint(double* x, double* y)
  {
    _TDispID _dispid(/* GetLoftPoint */ DISPID(7));
    TAutoArgs<2> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall UserSetPlacement(BSTR prompt/*[def,opt]*/)
  {
    _TDispID _dispid(/* UserSetPlacement */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = prompt /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall BeginEdit()
  {
    _TDispID _dispid(/* BeginEdit */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall AddProjectionOf(LPDISPATCH entity)
  {
    _TDispID _dispid(/* AddProjectionOf */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetLoftPoint(double x/*[def,opt]*/, double y/*[def,opt]*/)
  {
    _TDispID _dispid(/* SetLoftPoint */ DISPID(11));
    TAutoArgs<2> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSurface()
  {
    _TDispID _dispid(/* GetSurface */ DISPID(12));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          angle = {read = get_angle, write = set_angle};
};
// *********************************************************************//
// Interface: ksRasterFormatParam
// Flags:     (4096) Dispatchable
// GUID:      {1A91A8AB-AF8C-4EE3-86D4-0A9C00123195}
// *********************************************************************//
interface ksRasterFormatParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_format(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* format */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_format()
  {
    _TDispID _dispid(/* format */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_colorBPP(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* colorBPP */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_colorBPP()
  {
    _TDispID _dispid(/* colorBPP */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_greyScale(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* greyScale */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_greyScale()
  {
    _TDispID _dispid(/* greyScale */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_extResolution(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* extResolution */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_extResolution()
  {
    _TDispID _dispid(/* extResolution */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_extScale(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* extScale */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_extScale()
  {
    _TDispID _dispid(/* extScale */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_colorType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* colorType */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_colorType()
  {
    _TDispID _dispid(/* colorType */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_onlyThinLine(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* onlyThinLine */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_onlyThinLine()
  {
    _TDispID _dispid(/* onlyThinLine */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_pages(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* pages */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_pages()
  {
    _TDispID _dispid(/* pages */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_rangeIndex(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* rangeIndex */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_rangeIndex()
  {
    _TDispID _dispid(/* rangeIndex */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_multiPageOutput(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* multiPageOutput */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_multiPageOutput()
  {
    _TDispID _dispid(/* multiPageOutput */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           format = {read = get_format, write = set_format};
  __property   short           colorBPP = {read = get_colorBPP, write = set_colorBPP};
  __property   TOLEBOOL        greyScale = {read = get_greyScale, write = set_greyScale};
  __property   long            extResolution = {read = get_extResolution, write = set_extResolution};
  __property   double          extScale = {read = get_extScale, write = set_extScale};
  __property   short           colorType = {read = get_colorType, write = set_colorType};
  __property   TOLEBOOL        onlyThinLine = {read = get_onlyThinLine, write = set_onlyThinLine};
  __property   BSTR            pages = {read = get_pages, write = set_pages};
  __property   short           rangeIndex = {read = get_rangeIndex, write = set_rangeIndex};
  __property   TOLEBOOL        multiPageOutput = {read = get_multiPageOutput, write = set_multiPageOutput};
};
// *********************************************************************//
// Interface: ksAdditionFormatParam
// Flags:     (4096) Dispatchable
// GUID:      {0FD25FF9-AB0A-48F3-BAD4-F193116C0887}
// *********************************************************************//
interface ksAdditionFormatParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_format(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* format */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_format()
  {
    _TDispID _dispid(/* format */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_formatBinary(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* formatBinary */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_formatBinary()
  {
    _TDispID _dispid(/* formatBinary */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_topolgyIncluded(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* topolgyIncluded */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_topolgyIncluded()
  {
    _TDispID _dispid(/* topolgyIncluded */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           format = {read = get_format, write = set_format};
  __property   TOLEBOOL        formatBinary = {read = get_formatBinary, write = set_formatBinary};
  __property   TOLEBOOL        topolgyIncluded = {read = get_topolgyIncluded, write = set_topolgyIncluded};
};
// *********************************************************************//
// Interface: ksConstraintParam
// Flags:     (4096) Dispatchable
// GUID:      {862E250D-9DB1-47E8-8EE2-9BE2D2453D5A}
// *********************************************************************//
interface ksConstraintParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_constrType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* constrType */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_constrType()
  {
    _TDispID _dispid(/* constrType */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_index(int /*[VT_INT:0]*/ Value)
  {
    _TDispID _dispid(/* index */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  int /*[VT_INT:0]*/ __fastcall get_index()
  {
    _TDispID _dispid(/* index */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_partner(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* partner */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_partner()
  {
    _TDispID _dispid(/* partner */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_partnerIndex(int /*[VT_INT:0]*/ Value)
  {
    _TDispID _dispid(/* partnerIndex */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  int /*[VT_INT:0]*/ __fastcall get_partnerIndex()
  {
    _TDispID _dispid(/* partnerIndex */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           constrType = {read = get_constrType, write = set_constrType};
  __property   int             index = {read = get_index, write = set_index};
  __property   long            partner = {read = get_partner, write = set_partner};
  __property   int             partnerIndex = {read = get_partnerIndex, write = set_partnerIndex};
};
// *********************************************************************//
// Interface: ksImportedSurfaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {78A2C35E-A7DA-414E-B90A-F19998EC7BD1}
// *********************************************************************//
interface ksImportedSurfaceDefinition : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall Clear()
  {
    _TDispID _dispid(/* Clear */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall BeginCurve()
  {
    _TDispID _dispid(/* BeginCurve */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall AddPoint(double x, double y, double z)
  {
    _TDispID _dispid(/* AddPoint */ DISPID(3));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = z /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall EndCurve()
  {
    _TDispID _dispid(/* EndCurve */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall AddCurve(TVariant arr)
  {
    _TDispID _dispid(/* AddCurve */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = arr /*[VT_VARIANT:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksFaceCollection
// Flags:     (4096) Dispatchable
// GUID:      {0E95ACE0-0E73-406F-AE94-E8A0592E298D}
// *********************************************************************//
interface ksFaceCollection : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall refresh()
  {
    _TDispID _dispid(/* refresh */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetCount()
  {
    _TDispID _dispid(/* GetCount */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall First()
  {
    _TDispID _dispid(/* First */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Last()
  {
    _TDispID _dispid(/* Last */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Next()
  {
    _TDispID _dispid(/* Next */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Prev()
  {
    _TDispID _dispid(/* Prev */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetByIndex(long index)
  {
    _TDispID _dispid(/* GetByIndex */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetByName(BSTR name, TOLEBOOL testFullName/*[def,opt]*/, 
                                  TOLEBOOL testIgnoreCase/*[def,opt]*/)
  {
    _TDispID _dispid(/* GetByName */ DISPID(8));
    TAutoArgs<3> _args;
    _args[1] = name /*[VT_BSTR:0]*/;
    _args[2] = testFullName /*[VT_BOOL:0]*/;
    _args[3] = testIgnoreCase /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall FindIt(LPDISPATCH entity)
  {
    _TDispID _dispid(/* FindIt */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksVertexDefinition
// Flags:     (4096) Dispatchable
// GUID:      {A7257E73-EB61-4602-BC8B-2D00EA4AA062}
// *********************************************************************//
interface ksVertexDefinition : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall GetPoint(double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetPoint */ DISPID(1));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    _args[3] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetOwnerEntity()
  {
    _TDispID _dispid(/* GetOwnerEntity */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall get_topologyVertex()
  {
    _TDispID _dispid(/* topologyVertex */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall get_freeVertex()
  {
    _TDispID _dispid(/* freeVertex */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        topologyVertex = {read = get_topologyVertex};
  __property   TOLEBOOL        freeVertex = {read = get_freeVertex};
};
// *********************************************************************//
// Interface: ksTessellation
// Flags:     (4096) Dispatchable
// GUID:      {B810650E-7819-485C-90D2-ADEB647AE5E2}
// *********************************************************************//
interface ksTessellation : public TDispWrapper<IDispatch>
{
  long __fastcall GetFacetsCount()
  {
    _TDispID _dispid(/* GetFacetsCount */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetFacetData(int index, LPDISPATCH facet)
  {
    _TDispID _dispid(/* GetFacetData */ DISPID(2));
    TAutoArgs<2> _args;
    _args[1] = index /*[VT_INT:0]*/;
    _args[2] = facet /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetPointsCount()
  {
    _TDispID _dispid(/* GetPointsCount */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetPoint(int index, float* x, float* y, float* z)
  {
    _TDispID _dispid(/* GetPoint */ DISPID(4));
    TAutoArgs<4> _args;
    _args[1] = index /*[VT_INT:0]*/;
    _args[2] = x /*[VT_R4:1]*/;
    _args[3] = y /*[VT_R4:1]*/;
    _args[4] = z /*[VT_R4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetNormal(int index, float* x, float* y, float* z)
  {
    _TDispID _dispid(/* GetNormal */ DISPID(5));
    TAutoArgs<4> _args;
    _args[1] = index /*[VT_INT:0]*/;
    _args[2] = x /*[VT_R4:1]*/;
    _args[3] = y /*[VT_R4:1]*/;
    _args[4] = z /*[VT_R4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetFacetSize(double sag)
  {
    _TDispID _dispid(/* SetFacetSize */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = sag /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetFacetSize()
  {
    _TDispID _dispid(/* GetFacetSize */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetFacet()
  {
    _TDispID _dispid(/* GetFacet */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall refresh()
  {
    _TDispID _dispid(/* refresh */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetFacetPoints(TVariant* points, TVariant* indexes)
  {
    _TDispID _dispid(/* GetFacetPoints */ DISPID(10));
    TAutoArgs<2> _args;
    _args[1] = points /*[VT_VARIANT:1]*/;
    _args[2] = indexes /*[VT_VARIANT:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetFacetNormals(TVariant* normals)
  {
    _TDispID _dispid(/* GetFacetNormals */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = normals /*[VT_VARIANT:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksFacet
// Flags:     (4096) Dispatchable
// GUID:      {EB6AFBC0-C387-4E07-B24E-DDF2B7926A26}
// *********************************************************************//
interface ksFacet : public TDispWrapper<IDispatch>
{
  int __fastcall GetPointsCount()
  {
    _TDispID _dispid(/* GetPointsCount */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetPoint(int index, float* x, float* y, float* z)
  {
    _TDispID _dispid(/* GetPoint */ DISPID(2));
    TAutoArgs<4> _args;
    _args[1] = index /*[VT_INT:0]*/;
    _args[2] = x /*[VT_R4:1]*/;
    _args[3] = y /*[VT_R4:1]*/;
    _args[4] = z /*[VT_R4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetNormal(int index, float* x, float* y, float* z)
  {
    _TDispID _dispid(/* GetNormal */ DISPID(3));
    TAutoArgs<4> _args;
    _args[1] = index /*[VT_INT:0]*/;
    _args[2] = x /*[VT_R4:1]*/;
    _args[3] = y /*[VT_R4:1]*/;
    _args[4] = z /*[VT_R4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  int __fastcall GetTessellationIndex(int index)
  {
    _TDispID _dispid(/* GetTessellationIndex */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_INT:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksMeasurer
// Flags:     (4096) Dispatchable
// GUID:      {ABC84FE5-3945-4A0B-820A-719BF4B79224}
// *********************************************************************//
interface ksMeasurer : public TDispWrapper<IDispatch>
{
  void __fastcall set_unit(unsigned_long /*[VT_UI4:0]*/ Value)
  {
    _TDispID _dispid(/* unit */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  unsigned_long /*[VT_UI4:0]*/ __fastcall get_unit()
  {
    _TDispID _dispid(/* unit */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_extendObject1(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* extendObject1 */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_extendObject1()
  {
    _TDispID _dispid(/* extendObject1 */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_extendObject2(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* extendObject2 */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_extendObject2()
  {
    _TDispID _dispid(/* extendObject2 */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetObject1(LPDISPATCH obj)
  {
    _TDispID _dispid(/* SetObject1 */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetObject2(LPDISPATCH obj)
  {
    _TDispID _dispid(/* SetObject2 */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetObject1()
  {
    _TDispID _dispid(/* GetObject1 */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetObject2()
  {
    _TDispID _dispid(/* GetObject2 */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Calc()
  {
    _TDispID _dispid(/* Calc */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsAngleValid()
  {
    _TDispID _dispid(/* IsAngleValid */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_angle()
  {
    _TDispID _dispid(/* angle */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_distance()
  {
    _TDispID _dispid(/* distance */ DISPID(11));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetPoint1(double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetPoint1 */ DISPID(12));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    _args[3] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetPoint2(double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetPoint2 */ DISPID(13));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    _args[3] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_MaxDistance()
  {
    _TDispID _dispid(/* MaxDistance */ DISPID(14));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_NormalDistance()
  {
    _TDispID _dispid(/* NormalDistance */ DISPID(15));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetMaxPoint1(double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetMaxPoint1 */ DISPID(16));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    _args[3] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetMaxPoint2(double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetMaxPoint2 */ DISPID(17));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    _args[3] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetNormalPoint1(double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetNormalPoint1 */ DISPID(18));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    _args[3] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetNormalPoint2(double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetNormalPoint2 */ DISPID(19));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    _args[3] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_MeasureResult()
  {
    _TDispID _dispid(/* MeasureResult */ DISPID(20));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   unsigned_long   unit = {read = get_unit, write = set_unit};
  __property   TOLEBOOL        extendObject1 = {read = get_extendObject1, write = set_extendObject1};
  __property   TOLEBOOL        extendObject2 = {read = get_extendObject2, write = set_extendObject2};
  __property   double          angle = {read = get_angle};
  __property   double          distance = {read = get_distance};
  __property   double          MaxDistance = {read = get_MaxDistance};
  __property   double          NormalDistance = {read = get_NormalDistance};
  __property   long            MeasureResult = {read = get_MeasureResult};
};
// *********************************************************************//
// Interface: ksBodyCollection
// Flags:     (4096) Dispatchable
// GUID:      {CFC49C01-7653-4845-93FD-13428F5D58EC}
// *********************************************************************//
interface ksBodyCollection : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall refresh()
  {
    _TDispID _dispid(/* refresh */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetCount()
  {
    _TDispID _dispid(/* GetCount */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall First()
  {
    _TDispID _dispid(/* First */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Last()
  {
    _TDispID _dispid(/* Last */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Next()
  {
    _TDispID _dispid(/* Next */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Prev()
  {
    _TDispID _dispid(/* Prev */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetByIndex(long index)
  {
    _TDispID _dispid(/* GetByIndex */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall FindIt(LPDISPATCH entity)
  {
    _TDispID _dispid(/* FindIt */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Clear()
  {
    _TDispID _dispid(/* Clear */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Add(LPDISPATCH body)
  {
    _TDispID _dispid(/* Add */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = body /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall AddAt(LPDISPATCH body, long index)
  {
    _TDispID _dispid(/* AddAt */ DISPID(11));
    TAutoArgs<2> _args;
    _args[1] = body /*[VT_DISPATCH:0]*/;
    _args[2] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall AddBefore(LPDISPATCH body, LPDISPATCH base)
  {
    _TDispID _dispid(/* AddBefore */ DISPID(12));
    TAutoArgs<2> _args;
    _args[1] = body /*[VT_DISPATCH:0]*/;
    _args[2] = base /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DetachByIndex(long index)
  {
    _TDispID _dispid(/* DetachByIndex */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DetachByBody(LPDISPATCH body)
  {
    _TDispID _dispid(/* DetachByBody */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = body /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetByIndex(LPDISPATCH body, long index)
  {
    _TDispID _dispid(/* SetByIndex */ DISPID(15));
    TAutoArgs<2> _args;
    _args[1] = body /*[VT_DISPATCH:0]*/;
    _args[2] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksBody
// Flags:     (4096) Dispatchable
// GUID:      {03EFC9DD-E05A-4277-BC7C-4FD499A252DE}
// *********************************************************************//
interface ksBody : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall GetGabarit(double* x1, double* y1, double* z1, double* x2, double* y2, 
                                 double* z2)
  {
    _TDispID _dispid(/* GetGabarit */ DISPID(1));
    TAutoArgs<6> _args;
    _args[1] = x1 /*[VT_R8:1]*/;
    _args[2] = y1 /*[VT_R8:1]*/;
    _args[3] = z1 /*[VT_R8:1]*/;
    _args[4] = x2 /*[VT_R8:1]*/;
    _args[5] = y2 /*[VT_R8:1]*/;
    _args[6] = z2 /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall FaceCollection()
  {
    _TDispID _dispid(/* FaceCollection */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsSolid()
  {
    _TDispID _dispid(/* IsSolid */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall CalcMassInertiaProperties(unsigned_long bitVector)
  {
    _TDispID _dispid(/* CalcMassInertiaProperties */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = bitVector /*[VT_UI4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall CurveIntersection(LPDISPATCH curve, LPDISPATCH fases, LPDISPATCH points)
  {
    _TDispID _dispid(/* CurveIntersection */ DISPID(5));
    TAutoArgs<3> _args;
    _args[1] = curve /*[VT_DISPATCH:0]*/;
    _args[2] = fases /*[VT_DISPATCH:0]*/;
    _args[3] = points /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall CheckIntersectionWithBody(LPDISPATCH otherBody, TOLEBOOL checkTangent)
  {
    _TDispID _dispid(/* CheckIntersectionWithBody */ DISPID(6));
    TAutoArgs<2> _args;
    _args[1] = otherBody /*[VT_DISPATCH:0]*/;
    _args[2] = checkTangent /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall get_MultiBodyParts()
  {
    _TDispID _dispid(/* MultiBodyParts */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetFeature()
  {
    _TDispID _dispid(/* GetFeature */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetIntersectionFacesWithBody(LPDISPATCH otherBody, TVariant* intersectionFaces1, 
                                               TVariant* intersectionFaces2, 
                                               TVariant* connectedFaces1, TVariant* connectedFaces2)
  {
    _TDispID _dispid(/* GetIntersectionFacesWithBody */ DISPID(9));
    TAutoArgs<5> _args;
    _args[1] = otherBody /*[VT_DISPATCH:0]*/;
    _args[2] = intersectionFaces1 /*[VT_VARIANT:1]*/;
    _args[3] = intersectionFaces2 /*[VT_VARIANT:1]*/;
    _args[4] = connectedFaces1 /*[VT_VARIANT:1]*/;
    _args[5] = connectedFaces2 /*[VT_VARIANT:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        MultiBodyParts = {read = get_MultiBodyParts};
};
// *********************************************************************//
// Interface: ksSurface
// Flags:     (4096) Dispatchable
// GUID:      {963CB6E1-B9BF-4234-964A-13BFE6C0282A}
// *********************************************************************//
interface ksSurface : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall GetGabarit(double* x1, double* y1, double* z1, double* x2, double* y2, 
                                 double* z2)
  {
    _TDispID _dispid(/* GetGabarit */ DISPID(1));
    TAutoArgs<6> _args;
    _args[1] = x1 /*[VT_R8:1]*/;
    _args[2] = y1 /*[VT_R8:1]*/;
    _args[3] = z1 /*[VT_R8:1]*/;
    _args[4] = x2 /*[VT_R8:1]*/;
    _args[5] = y2 /*[VT_R8:1]*/;
    _args[6] = z2 /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetPoint(double paramU, double paramV, double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetPoint */ DISPID(2));
    TAutoArgs<5> _args;
    _args[1] = paramU /*[VT_R8:0]*/;
    _args[2] = paramV /*[VT_R8:0]*/;
    _args[3] = x /*[VT_R8:1]*/;
    _args[4] = y /*[VT_R8:1]*/;
    _args[5] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetNormal(double paramU, double paramV, double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetNormal */ DISPID(3));
    TAutoArgs<5> _args;
    _args[1] = paramU /*[VT_R8:0]*/;
    _args[2] = paramV /*[VT_R8:0]*/;
    _args[3] = x /*[VT_R8:1]*/;
    _args[4] = y /*[VT_R8:1]*/;
    _args[5] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetTangentVectorU(double paramU, double paramV, double* x, double* y, 
                                        double* z)
  {
    _TDispID _dispid(/* GetTangentVectorU */ DISPID(4));
    TAutoArgs<5> _args;
    _args[1] = paramU /*[VT_R8:0]*/;
    _args[2] = paramV /*[VT_R8:0]*/;
    _args[3] = x /*[VT_R8:1]*/;
    _args[4] = y /*[VT_R8:1]*/;
    _args[5] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetTangentVectorV(double paramU, double paramV, double* x, double* y, 
                                        double* z)
  {
    _TDispID _dispid(/* GetTangentVectorV */ DISPID(5));
    TAutoArgs<5> _args;
    _args[1] = paramU /*[VT_R8:0]*/;
    _args[2] = paramV /*[VT_R8:0]*/;
    _args[3] = x /*[VT_R8:1]*/;
    _args[4] = y /*[VT_R8:1]*/;
    _args[5] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetDerivativeU(double paramU, double paramV, double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetDerivativeU */ DISPID(6));
    TAutoArgs<5> _args;
    _args[1] = paramU /*[VT_R8:0]*/;
    _args[2] = paramV /*[VT_R8:0]*/;
    _args[3] = x /*[VT_R8:1]*/;
    _args[4] = y /*[VT_R8:1]*/;
    _args[5] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetDerivativeV(double paramU, double paramV, double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetDerivativeV */ DISPID(7));
    TAutoArgs<5> _args;
    _args[1] = paramU /*[VT_R8:0]*/;
    _args[2] = paramV /*[VT_R8:0]*/;
    _args[3] = x /*[VT_R8:1]*/;
    _args[4] = y /*[VT_R8:1]*/;
    _args[5] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetDerivativeUU(double paramU, double paramV, double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetDerivativeUU */ DISPID(8));
    TAutoArgs<5> _args;
    _args[1] = paramU /*[VT_R8:0]*/;
    _args[2] = paramV /*[VT_R8:0]*/;
    _args[3] = x /*[VT_R8:1]*/;
    _args[4] = y /*[VT_R8:1]*/;
    _args[5] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetDerivativeVV(double paramU, double paramV, double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetDerivativeVV */ DISPID(9));
    TAutoArgs<5> _args;
    _args[1] = paramU /*[VT_R8:0]*/;
    _args[2] = paramV /*[VT_R8:0]*/;
    _args[3] = x /*[VT_R8:1]*/;
    _args[4] = y /*[VT_R8:1]*/;
    _args[5] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetDerivativeUV(double paramU, double paramV, double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetDerivativeUV */ DISPID(10));
    TAutoArgs<5> _args;
    _args[1] = paramU /*[VT_R8:0]*/;
    _args[2] = paramV /*[VT_R8:0]*/;
    _args[3] = x /*[VT_R8:1]*/;
    _args[4] = y /*[VT_R8:1]*/;
    _args[5] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetDerivativeUUU(double paramU, double paramV, double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetDerivativeUUU */ DISPID(11));
    TAutoArgs<5> _args;
    _args[1] = paramU /*[VT_R8:0]*/;
    _args[2] = paramV /*[VT_R8:0]*/;
    _args[3] = x /*[VT_R8:1]*/;
    _args[4] = y /*[VT_R8:1]*/;
    _args[5] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetDerivativeVVV(double paramU, double paramV, double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetDerivativeVVV */ DISPID(12));
    TAutoArgs<5> _args;
    _args[1] = paramU /*[VT_R8:0]*/;
    _args[2] = paramV /*[VT_R8:0]*/;
    _args[3] = x /*[VT_R8:1]*/;
    _args[4] = y /*[VT_R8:1]*/;
    _args[5] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetDerivativeUVV(double paramU, double paramV, double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetDerivativeUVV */ DISPID(13));
    TAutoArgs<5> _args;
    _args[1] = paramU /*[VT_R8:0]*/;
    _args[2] = paramV /*[VT_R8:0]*/;
    _args[3] = x /*[VT_R8:1]*/;
    _args[4] = y /*[VT_R8:1]*/;
    _args[5] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetDerivativeUUV(double paramU, double paramV, double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetDerivativeUUV */ DISPID(14));
    TAutoArgs<5> _args;
    _args[1] = paramU /*[VT_R8:0]*/;
    _args[2] = paramV /*[VT_R8:0]*/;
    _args[3] = x /*[VT_R8:1]*/;
    _args[4] = y /*[VT_R8:1]*/;
    _args[5] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetParamUMin()
  {
    _TDispID _dispid(/* GetParamUMin */ DISPID(15));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetParamUMax()
  {
    _TDispID _dispid(/* GetParamUMax */ DISPID(16));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetParamVMin()
  {
    _TDispID _dispid(/* GetParamVMin */ DISPID(17));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetParamVMax()
  {
    _TDispID _dispid(/* GetParamVMax */ DISPID(18));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsClosedU()
  {
    _TDispID _dispid(/* IsClosedU */ DISPID(19));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsClosedV()
  {
    _TDispID _dispid(/* IsClosedV */ DISPID(20));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsPlane()
  {
    _TDispID _dispid(/* IsPlane */ DISPID(21));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsCone()
  {
    _TDispID _dispid(/* IsCone */ DISPID(22));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsCylinder()
  {
    _TDispID _dispid(/* IsCylinder */ DISPID(23));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsTorus()
  {
    _TDispID _dispid(/* IsTorus */ DISPID(24));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsSphere()
  {
    _TDispID _dispid(/* IsSphere */ DISPID(25));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsNurbsSurface()
  {
    _TDispID _dispid(/* IsNurbsSurface */ DISPID(26));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsRevolved()
  {
    _TDispID _dispid(/* IsRevolved */ DISPID(27));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsSwept()
  {
    _TDispID _dispid(/* IsSwept */ DISPID(28));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSurfaceParam()
  {
    _TDispID _dispid(/* GetSurfaceParam */ DISPID(29));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetArea(unsigned_long bitVector)
  {
    _TDispID _dispid(/* GetArea */ DISPID(30));
    TAutoArgs<1> _args;
    _args[1] = bitVector /*[VT_UI4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall NearPointProjection(double x, double y, double z, double* u, double* v, 
                                          TOLEBOOL ext)
  {
    _TDispID _dispid(/* NearPointProjection */ DISPID(31));
    TAutoArgs<6> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = z /*[VT_R8:0]*/;
    _args[4] = u /*[VT_R8:1]*/;
    _args[5] = v /*[VT_R8:1]*/;
    _args[6] = ext /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall CurveIntersection(LPDISPATCH curve, LPDISPATCH points, TOLEBOOL extSurf, 
                                        TOLEBOOL extCurve)
  {
    _TDispID _dispid(/* CurveIntersection */ DISPID(32));
    TAutoArgs<4> _args;
    _args[1] = curve /*[VT_DISPATCH:0]*/;
    _args[2] = points /*[VT_DISPATCH:0]*/;
    _args[3] = extSurf /*[VT_BOOL:0]*/;
    _args[4] = extCurve /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetNurbsSurfaceParam()
  {
    _TDispID _dispid(/* GetNurbsSurfaceParam */ DISPID(33));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetBoundaryUVNurbs(TOLEBOOL uv, TOLEBOOL closed, long loopIndex, 
                                         long edgeIndex, long* degree, TVariant* points, 
                                         TVariant* weights, TVariant* knots, double* tMin, 
                                         double* tMax)
  {
    _TDispID _dispid(/* GetBoundaryUVNurbs */ DISPID(34));
    TAutoArgs<10> _args;
    _args[1] = uv /*[VT_BOOL:0]*/;
    _args[2] = closed /*[VT_BOOL:0]*/;
    _args[3] = loopIndex /*[VT_I4:0]*/;
    _args[4] = edgeIndex /*[VT_I4:0]*/;
    _args[5] = degree /*[VT_I4:1]*/;
    _args[6] = points /*[VT_VARIANT:1]*/;
    _args[7] = weights /*[VT_VARIANT:1]*/;
    _args[8] = knots /*[VT_VARIANT:1]*/;
    _args[9] = tMin /*[VT_R8:1]*/;
    _args[10] = tMax /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_BoundaryCount()
  {
    _TDispID _dispid(/* BoundaryCount */ DISPID(35));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetEdgesCount(long loopIndex)
  {
    _TDispID _dispid(/* GetEdgesCount */ DISPID(36));
    TAutoArgs<1> _args;
    _args[1] = loopIndex /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            BoundaryCount = {read = get_BoundaryCount};
};
// *********************************************************************//
// Interface: ksEdgeCollection
// Flags:     (4096) Dispatchable
// GUID:      {6096A4FD-970B-468C-815E-37CA1970A203}
// *********************************************************************//
interface ksEdgeCollection : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall refresh()
  {
    _TDispID _dispid(/* refresh */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetCount()
  {
    _TDispID _dispid(/* GetCount */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall First()
  {
    _TDispID _dispid(/* First */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Last()
  {
    _TDispID _dispid(/* Last */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Next()
  {
    _TDispID _dispid(/* Next */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Prev()
  {
    _TDispID _dispid(/* Prev */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetByIndex(long index)
  {
    _TDispID _dispid(/* GetByIndex */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall FindIt(LPDISPATCH entity)
  {
    _TDispID _dispid(/* FindIt */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksOrientedEdge
// Flags:     (4096) Dispatchable
// GUID:      {88C32A80-3735-4E18-A02E-9B2A8F0A90E3}
// *********************************************************************//
interface ksOrientedEdge : public TDispWrapper<IDispatch>
{
  LPDISPATCH __fastcall GetEdge()
  {
    _TDispID _dispid(/* GetEdge */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetOrientation()
  {
    _TDispID _dispid(/* GetOrientation */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetOwnerEntity()
  {
    _TDispID _dispid(/* GetOwnerEntity */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetNext()
  {
    _TDispID _dispid(/* GetNext */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetSameSense()
  {
    _TDispID _dispid(/* GetSameSense */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetAdjacentFace(long facePlus)
  {
    _TDispID _dispid(/* GetAdjacentFace */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = facePlus /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksOrientedEdgeCollection
// Flags:     (4096) Dispatchable
// GUID:      {5CE8909D-CF3D-418F-A9B9-0A12B23916C0}
// *********************************************************************//
interface ksOrientedEdgeCollection : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall refresh()
  {
    _TDispID _dispid(/* refresh */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetCount()
  {
    _TDispID _dispid(/* GetCount */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall First()
  {
    _TDispID _dispid(/* First */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Last()
  {
    _TDispID _dispid(/* Last */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Next()
  {
    _TDispID _dispid(/* Next */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Prev()
  {
    _TDispID _dispid(/* Prev */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetByIndex(long index)
  {
    _TDispID _dispid(/* GetByIndex */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall FindIt(LPDISPATCH entity)
  {
    _TDispID _dispid(/* FindIt */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksLoop
// Flags:     (4096) Dispatchable
// GUID:      {22BC5C86-CF58-45E4-AA46-5E8D5A825798}
// *********************************************************************//
interface ksLoop : public TDispWrapper<IDispatch>
{
  LPDISPATCH __fastcall OrientedEdgeCollection(LPDISPATCH edge)
  {
    _TDispID _dispid(/* OrientedEdgeCollection */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = edge /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall EdgeCollection()
  {
    _TDispID _dispid(/* EdgeCollection */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsOuter()
  {
    _TDispID _dispid(/* IsOuter */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetLength(unsigned_long bitVector)
  {
    _TDispID _dispid(/* GetLength */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = bitVector /*[VT_UI4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksLoopCollection
// Flags:     (4096) Dispatchable
// GUID:      {1BD7207E-36AA-47DF-913E-AD26DE6C16E8}
// *********************************************************************//
interface ksLoopCollection : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall refresh()
  {
    _TDispID _dispid(/* refresh */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetCount()
  {
    _TDispID _dispid(/* GetCount */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall First()
  {
    _TDispID _dispid(/* First */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Last()
  {
    _TDispID _dispid(/* Last */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Next()
  {
    _TDispID _dispid(/* Next */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Prev()
  {
    _TDispID _dispid(/* Prev */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetByIndex(long index)
  {
    _TDispID _dispid(/* GetByIndex */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksCurve3D
// Flags:     (4096) Dispatchable
// GUID:      {7572648A-D4EE-41FE-8D74-EC7D1F91BDE2}
// *********************************************************************//
interface ksCurve3D : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall GetPoint(double paramT, double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetPoint */ DISPID(1));
    TAutoArgs<4> _args;
    _args[1] = paramT /*[VT_R8:0]*/;
    _args[2] = x /*[VT_R8:1]*/;
    _args[3] = y /*[VT_R8:1]*/;
    _args[4] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetTangentVector(double paramT, double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetTangentVector */ DISPID(2));
    TAutoArgs<4> _args;
    _args[1] = paramT /*[VT_R8:0]*/;
    _args[2] = x /*[VT_R8:1]*/;
    _args[3] = y /*[VT_R8:1]*/;
    _args[4] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetNormal(double paramT, double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetNormal */ DISPID(3));
    TAutoArgs<4> _args;
    _args[1] = paramT /*[VT_R8:0]*/;
    _args[2] = x /*[VT_R8:1]*/;
    _args[3] = y /*[VT_R8:1]*/;
    _args[4] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetDerivativeT(double paramT, double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetDerivativeT */ DISPID(4));
    TAutoArgs<4> _args;
    _args[1] = paramT /*[VT_R8:0]*/;
    _args[2] = x /*[VT_R8:1]*/;
    _args[3] = y /*[VT_R8:1]*/;
    _args[4] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetDerivativeTT(double paramT, double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetDerivativeTT */ DISPID(5));
    TAutoArgs<4> _args;
    _args[1] = paramT /*[VT_R8:0]*/;
    _args[2] = x /*[VT_R8:1]*/;
    _args[3] = y /*[VT_R8:1]*/;
    _args[4] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetDerivativeTTT(double paramT, double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetDerivativeTTT */ DISPID(6));
    TAutoArgs<4> _args;
    _args[1] = paramT /*[VT_R8:0]*/;
    _args[2] = x /*[VT_R8:1]*/;
    _args[3] = y /*[VT_R8:1]*/;
    _args[4] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetParamMin()
  {
    _TDispID _dispid(/* GetParamMin */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetParamMax()
  {
    _TDispID _dispid(/* GetParamMax */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsClosed()
  {
    _TDispID _dispid(/* IsClosed */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsPeriodic()
  {
    _TDispID _dispid(/* IsPeriodic */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetMetricLength(double startParam, double endParam)
  {
    _TDispID _dispid(/* GetMetricLength */ DISPID(11));
    TAutoArgs<2> _args;
    _args[1] = startParam /*[VT_R8:0]*/;
    _args[2] = endParam /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetGabarit(double* x1, double* y1, double* z1, double* x2, double* y2, 
                                 double* z2)
  {
    _TDispID _dispid(/* GetGabarit */ DISPID(12));
    TAutoArgs<6> _args;
    _args[1] = x1 /*[VT_R8:1]*/;
    _args[2] = y1 /*[VT_R8:1]*/;
    _args[3] = z1 /*[VT_R8:1]*/;
    _args[4] = x2 /*[VT_R8:1]*/;
    _args[5] = y2 /*[VT_R8:1]*/;
    _args[6] = z2 /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsDegenerate()
  {
    _TDispID _dispid(/* IsDegenerate */ DISPID(13));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsPlanar()
  {
    _TDispID _dispid(/* IsPlanar */ DISPID(14));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsLineSeg()
  {
    _TDispID _dispid(/* IsLineSeg */ DISPID(15));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsArc()
  {
    _TDispID _dispid(/* IsArc */ DISPID(16));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsCircle()
  {
    _TDispID _dispid(/* IsCircle */ DISPID(17));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsEllipse()
  {
    _TDispID _dispid(/* IsEllipse */ DISPID(18));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsNurbs()
  {
    _TDispID _dispid(/* IsNurbs */ DISPID(19));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetCurveParam()
  {
    _TDispID _dispid(/* GetCurveParam */ DISPID(20));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetLength(unsigned_long bitVector)
  {
    _TDispID _dispid(/* GetLength */ DISPID(21));
    TAutoArgs<1> _args;
    _args[1] = bitVector /*[VT_UI4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall NearPointProjection(double x, double y, double z, double* t, TOLEBOOL ext)
  {
    _TDispID _dispid(/* NearPointProjection */ DISPID(22));
    TAutoArgs<5> _args;
    _args[1] = x /*[VT_R8:0]*/;
    _args[2] = y /*[VT_R8:0]*/;
    _args[3] = z /*[VT_R8:0]*/;
    _args[4] = t /*[VT_R8:1]*/;
    _args[5] = ext /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetNurbs3dParam()
  {
    _TDispID _dispid(/* GetNurbs3dParam */ DISPID(23));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TVariant __fastcall CalculatePolygon(double step)
  {
    _TDispID _dispid(/* CalculatePolygon */ DISPID(24));
    TAutoArgs<1> _args;
    _args[1] = step /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksLineSeg3dParam
// Flags:     (4096) Dispatchable
// GUID:      {DC8F6A7B-FF16-46FF-986D-2F7E1F6B25C4}
// *********************************************************************//
interface ksLineSeg3dParam : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall GetPointFirst(double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetPointFirst */ DISPID(1));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    _args[3] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetPointLast(double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetPointLast */ DISPID(2));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    _args[3] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksCircle3dParam
// Flags:     (4096) Dispatchable
// GUID:      {82758442-C9EB-48F7-B304-083C5E64D4E0}
// *********************************************************************//
interface ksCircle3dParam : public TDispWrapper<IDispatch>
{
  double __fastcall get_radius()
  {
    _TDispID _dispid(/* radius */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlacement()
  {
    _TDispID _dispid(/* GetPlacement */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          radius = {read = get_radius};
};
// *********************************************************************//
// Interface: ksEllipse3dParam
// Flags:     (4096) Dispatchable
// GUID:      {5B8082B8-6AD3-4509-826D-D23B7F613213}
// *********************************************************************//
interface ksEllipse3dParam : public TDispWrapper<IDispatch>
{
  double __fastcall get_majorRadius()
  {
    _TDispID _dispid(/* majorRadius */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_minorRadius()
  {
    _TDispID _dispid(/* minorRadius */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlacement()
  {
    _TDispID _dispid(/* GetPlacement */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          majorRadius = {read = get_majorRadius};
  __property   double          minorRadius = {read = get_minorRadius};
};
// *********************************************************************//
// Interface: ksPlaneParam
// Flags:     (4096) Dispatchable
// GUID:      {6A6F6B95-D100-4D54-A430-70A42D342917}
// *********************************************************************//
interface ksPlaneParam : public TDispWrapper<IDispatch>
{
  LPDISPATCH __fastcall GetPlacement()
  {
    _TDispID _dispid(/* GetPlacement */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksConeParam
// Flags:     (4096) Dispatchable
// GUID:      {CCFA0D95-0834-4F92-988B-6E477AD67589}
// *********************************************************************//
interface ksConeParam : public TDispWrapper<IDispatch>
{
  double __fastcall get_radius()
  {
    _TDispID _dispid(/* radius */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_height()
  {
    _TDispID _dispid(/* height */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_angle()
  {
    _TDispID _dispid(/* angle */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlacement()
  {
    _TDispID _dispid(/* GetPlacement */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          radius = {read = get_radius};
  __property   double          height = {read = get_height};
  __property   double          angle = {read = get_angle};
};
// *********************************************************************//
// Interface: ksCylinderParam
// Flags:     (4096) Dispatchable
// GUID:      {5D462836-CF69-4995-AB78-8C7A83D09BD7}
// *********************************************************************//
interface ksCylinderParam : public TDispWrapper<IDispatch>
{
  double __fastcall get_radius()
  {
    _TDispID _dispid(/* radius */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_height()
  {
    _TDispID _dispid(/* height */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlacement()
  {
    _TDispID _dispid(/* GetPlacement */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          radius = {read = get_radius};
  __property   double          height = {read = get_height};
};
// *********************************************************************//
// Interface: ksSphereParam
// Flags:     (4096) Dispatchable
// GUID:      {C32977F3-3CA7-4D56-8AE7-4963E6851B75}
// *********************************************************************//
interface ksSphereParam : public TDispWrapper<IDispatch>
{
  double __fastcall get_radius()
  {
    _TDispID _dispid(/* radius */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlacement()
  {
    _TDispID _dispid(/* GetPlacement */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          radius = {read = get_radius};
};
// *********************************************************************//
// Interface: ksTorusParam
// Flags:     (4096) Dispatchable
// GUID:      {FDA3B147-BAF1-4F75-99AA-39D11323EA97}
// *********************************************************************//
interface ksTorusParam : public TDispWrapper<IDispatch>
{
  double __fastcall get_radius()
  {
    _TDispID _dispid(/* radius */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_generatrixRadius()
  {
    _TDispID _dispid(/* generatrixRadius */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlacement()
  {
    _TDispID _dispid(/* GetPlacement */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          radius = {read = get_radius};
  __property   double          generatrixRadius = {read = get_generatrixRadius};
};
// *********************************************************************//
// Interface: ksNurbsPoint3dParam
// Flags:     (4096) Dispatchable
// GUID:      {F1CD604D-1D26-4F6B-8F94-F112133E6162}
// *********************************************************************//
interface ksNurbsPoint3dParam : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall GetPoint(double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetPoint */ DISPID(1));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    _args[3] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_weight()
  {
    _TDispID _dispid(/* weight */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          weight = {read = get_weight};
};
// *********************************************************************//
// Interface: ksNurbsSurfaceParam
// Flags:     (4096) Dispatchable
// GUID:      {A12B63E8-9E0A-4854-B724-E18275B9FF20}
// *********************************************************************//
interface ksNurbsSurfaceParam : public TDispWrapper<IDispatch>
{
  short __fastcall GetDegree(TOLEBOOL paramU)
  {
    _TDispID _dispid(/* GetDegree */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = paramU /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetClose(TOLEBOOL paramU)
  {
    _TDispID _dispid(/* GetClose */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = paramU /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPointCollection()
  {
    _TDispID _dispid(/* GetPointCollection */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetKnotCollection(TOLEBOOL paramU)
  {
    _TDispID _dispid(/* GetKnotCollection */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = paramU /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetPeriodic(TOLEBOOL paramU)
  {
    _TDispID _dispid(/* GetPeriodic */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = paramU /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetNurbsParams(TOLEBOOL closedV, TOLEBOOL closedU, long* degreeV, 
                                     long* degreeU, long* nPV, long* nPU, TVariant* points, 
                                     TVariant* weights, TVariant* knotsV, TVariant* knotsU)
  {
    _TDispID _dispid(/* GetNurbsParams */ DISPID(6));
    TAutoArgs<10> _args;
    _args[1] = closedV /*[VT_BOOL:0]*/;
    _args[2] = closedU /*[VT_BOOL:0]*/;
    _args[3] = degreeV /*[VT_I4:1]*/;
    _args[4] = degreeU /*[VT_I4:1]*/;
    _args[5] = nPV /*[VT_I4:1]*/;
    _args[6] = nPU /*[VT_I4:1]*/;
    _args[7] = points /*[VT_VARIANT:1]*/;
    _args[8] = weights /*[VT_VARIANT:1]*/;
    _args[9] = knotsV /*[VT_VARIANT:1]*/;
    _args[10] = knotsU /*[VT_VARIANT:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetBoundaryUVNurbs(TOLEBOOL uv, TOLEBOOL closed, long loopIndex, 
                                         long edgeIndex, long* degree, TVariant* points, 
                                         TVariant* weights, TVariant* knots, double* tMin, 
                                         double* tMax)
  {
    _TDispID _dispid(/* GetBoundaryUVNurbs */ DISPID(7));
    TAutoArgs<10> _args;
    _args[1] = uv /*[VT_BOOL:0]*/;
    _args[2] = closed /*[VT_BOOL:0]*/;
    _args[3] = loopIndex /*[VT_I4:0]*/;
    _args[4] = edgeIndex /*[VT_I4:0]*/;
    _args[5] = degree /*[VT_I4:1]*/;
    _args[6] = points /*[VT_VARIANT:1]*/;
    _args[7] = weights /*[VT_VARIANT:1]*/;
    _args[8] = knots /*[VT_VARIANT:1]*/;
    _args[9] = tMin /*[VT_R8:1]*/;
    _args[10] = tMax /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetBoundaryCount()
  {
    _TDispID _dispid(/* GetBoundaryCount */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetEdgesCount(long loopIndex)
  {
    _TDispID _dispid(/* GetEdgesCount */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = loopIndex /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetMinMaxParameters(TOLEBOOL closedV, TOLEBOOL closedU, double* uMin, 
                                          double* uMax, double* vMin, double* vMax)
  {
    _TDispID _dispid(/* GetMinMaxParameters */ DISPID(10));
    TAutoArgs<6> _args;
    _args[1] = closedV /*[VT_BOOL:0]*/;
    _args[2] = closedU /*[VT_BOOL:0]*/;
    _args[3] = uMin /*[VT_R8:1]*/;
    _args[4] = uMax /*[VT_R8:1]*/;
    _args[5] = vMin /*[VT_R8:1]*/;
    _args[6] = vMax /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksNurbs3dParam
// Flags:     (4096) Dispatchable
// GUID:      {4DDDAEDB-2819-42D9-BDBB-4CCBC98D76DF}
// *********************************************************************//
interface ksNurbs3dParam : public TDispWrapper<IDispatch>
{
  short __fastcall get_degree()
  {
    _TDispID _dispid(/* degree */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall get_close()
  {
    _TDispID _dispid(/* close */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPointCollection()
  {
    _TDispID _dispid(/* GetPointCollection */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetKnotCollection()
  {
    _TDispID _dispid(/* GetKnotCollection */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall get_periodic()
  {
    _TDispID _dispid(/* periodic */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetNurbsPoints3DParams(TOLEBOOL closed, TVariant* points, TVariant* weights, 
                                             TVariant* knots)
  {
    _TDispID _dispid(/* GetNurbsPoints3DParams */ DISPID(6));
    TAutoArgs<4> _args;
    _args[1] = closed /*[VT_BOOL:0]*/;
    _args[2] = points /*[VT_VARIANT:1]*/;
    _args[3] = weights /*[VT_VARIANT:1]*/;
    _args[4] = knots /*[VT_VARIANT:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetMinMaxParameters(TOLEBOOL closed, double* tMin, double* tMax)
  {
    _TDispID _dispid(/* GetMinMaxParameters */ DISPID(7));
    TAutoArgs<3> _args;
    _args[1] = closed /*[VT_BOOL:0]*/;
    _args[2] = tMin /*[VT_R8:1]*/;
    _args[3] = tMax /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   short           degree = {read = get_degree};
  __property   TOLEBOOL        close = {read = get_close};
  __property   TOLEBOOL        periodic = {read = get_periodic};
};
// *********************************************************************//
// Interface: ksNurbsKnotCollection
// Flags:     (4096) Dispatchable
// GUID:      {483E9889-E1CA-4CA5-BE4E-ECB3D5CF0126}
// *********************************************************************//
interface ksNurbsKnotCollection : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall refresh()
  {
    _TDispID _dispid(/* refresh */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetCount()
  {
    _TDispID _dispid(/* GetCount */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall First()
  {
    _TDispID _dispid(/* First */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall Last()
  {
    _TDispID _dispid(/* Last */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall Next()
  {
    _TDispID _dispid(/* Next */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall Prev()
  {
    _TDispID _dispid(/* Prev */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall GetByIndex(long index)
  {
    _TDispID _dispid(/* GetByIndex */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Clear()
  {
    _TDispID _dispid(/* Clear */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Add(double entity)
  {
    _TDispID _dispid(/* Add */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = entity /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall AddAt(double entity, long index)
  {
    _TDispID _dispid(/* AddAt */ DISPID(10));
    TAutoArgs<2> _args;
    _args[1] = entity /*[VT_R8:0]*/;
    _args[2] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall AddBefore(double entity, double base)
  {
    _TDispID _dispid(/* AddBefore */ DISPID(11));
    TAutoArgs<2> _args;
    _args[1] = entity /*[VT_R8:0]*/;
    _args[2] = base /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DetachByIndex(long index)
  {
    _TDispID _dispid(/* DetachByIndex */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DetachByBody(double entity)
  {
    _TDispID _dispid(/* DetachByBody */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = entity /*[VT_R8:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetByIndex(double entity, long index)
  {
    _TDispID _dispid(/* SetByIndex */ DISPID(14));
    TAutoArgs<2> _args;
    _args[1] = entity /*[VT_R8:0]*/;
    _args[2] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksNurbsPoint3dCollCollection
// Flags:     (4096) Dispatchable
// GUID:      {84AF9C81-1795-4631-B58A-101732262E75}
// *********************************************************************//
interface ksNurbsPoint3dCollCollection : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall refresh()
  {
    _TDispID _dispid(/* refresh */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetCount()
  {
    _TDispID _dispid(/* GetCount */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall First()
  {
    _TDispID _dispid(/* First */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Last()
  {
    _TDispID _dispid(/* Last */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Next()
  {
    _TDispID _dispid(/* Next */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Prev()
  {
    _TDispID _dispid(/* Prev */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetByIndex(long index)
  {
    _TDispID _dispid(/* GetByIndex */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Clear()
  {
    _TDispID _dispid(/* Clear */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Add(LPDISPATCH entity)
  {
    _TDispID _dispid(/* Add */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall AddAt(LPDISPATCH entity, long index)
  {
    _TDispID _dispid(/* AddAt */ DISPID(10));
    TAutoArgs<2> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    _args[2] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall AddBefore(LPDISPATCH entity, LPDISPATCH base)
  {
    _TDispID _dispid(/* AddBefore */ DISPID(11));
    TAutoArgs<2> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    _args[2] = base /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DetachByIndex(long index)
  {
    _TDispID _dispid(/* DetachByIndex */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DetachByBody(LPDISPATCH entity)
  {
    _TDispID _dispid(/* DetachByBody */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetByIndex(LPDISPATCH entity, long index)
  {
    _TDispID _dispid(/* SetByIndex */ DISPID(14));
    TAutoArgs<2> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    _args[2] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall FindIt(LPDISPATCH entity)
  {
    _TDispID _dispid(/* FindIt */ DISPID(15));
    TAutoArgs<1> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksNurbsPoint3dCollection
// Flags:     (4096) Dispatchable
// GUID:      {3AD5E519-74E2-4D3B-B6A3-B1E81F1006F1}
// *********************************************************************//
interface ksNurbsPoint3dCollection : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall refresh()
  {
    _TDispID _dispid(/* refresh */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetCount()
  {
    _TDispID _dispid(/* GetCount */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall First()
  {
    _TDispID _dispid(/* First */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Last()
  {
    _TDispID _dispid(/* Last */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Next()
  {
    _TDispID _dispid(/* Next */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Prev()
  {
    _TDispID _dispid(/* Prev */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetByIndex(long index)
  {
    _TDispID _dispid(/* GetByIndex */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Clear()
  {
    _TDispID _dispid(/* Clear */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Add(LPDISPATCH entity)
  {
    _TDispID _dispid(/* Add */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall AddAt(LPDISPATCH entity, long index)
  {
    _TDispID _dispid(/* AddAt */ DISPID(10));
    TAutoArgs<2> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    _args[2] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall AddBefore(LPDISPATCH entity, LPDISPATCH base)
  {
    _TDispID _dispid(/* AddBefore */ DISPID(11));
    TAutoArgs<2> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    _args[2] = base /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DetachByIndex(long index)
  {
    _TDispID _dispid(/* DetachByIndex */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DetachByBody(LPDISPATCH entity)
  {
    _TDispID _dispid(/* DetachByBody */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetByIndex(LPDISPATCH entity, long index)
  {
    _TDispID _dispid(/* SetByIndex */ DISPID(14));
    TAutoArgs<2> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    _args[2] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall FindIt(LPDISPATCH entity)
  {
    _TDispID _dispid(/* FindIt */ DISPID(15));
    TAutoArgs<1> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksViewProjection
// Flags:     (4096) Dispatchable
// GUID:      {BF65B990-C2DC-4A12-9EB7-3E868608AF47}
// *********************************************************************//
interface ksViewProjection : public TDispWrapper<IDispatch>
{
  void __fastcall set_name(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* name */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_name()
  {
    _TDispID _dispid(/* name */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_scale(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* scale */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_scale()
  {
    _TDispID _dispid(/* scale */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsCurrent()
  {
    _TDispID _dispid(/* IsCurrent */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetCurrent()
  {
    _TDispID _dispid(/* SetCurrent */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetPlacement()
  {
    _TDispID _dispid(/* GetPlacement */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPlacement(LPDISPATCH place)
  {
    _TDispID _dispid(/* SetPlacement */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = place /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_index()
  {
    _TDispID _dispid(/* index */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetMatrix3D(TVariant Matrix3D)
  {
    _TDispID _dispid(/* SetMatrix3D */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Matrix3D /*[VT_VARIANT:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            name = {read = get_name, write = set_name};
  __property   double          scale = {read = get_scale, write = set_scale};
  __property   long            index = {read = get_index};
};
// *********************************************************************//
// Interface: ksViewProjectionCollection
// Flags:     (4096) Dispatchable
// GUID:      {A174F872-C800-409E-9FB2-FF5B89D8B4B8}
// *********************************************************************//
interface ksViewProjectionCollection : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall refresh()
  {
    _TDispID _dispid(/* refresh */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetCount()
  {
    _TDispID _dispid(/* GetCount */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall First()
  {
    _TDispID _dispid(/* First */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Last()
  {
    _TDispID _dispid(/* Last */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Next()
  {
    _TDispID _dispid(/* Next */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Prev()
  {
    _TDispID _dispid(/* Prev */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetByIndex(long index)
  {
    _TDispID _dispid(/* GetByIndex */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetByName(BSTR name, TOLEBOOL testFullName/*[def,opt]*/, 
                                  TOLEBOOL testIgnoreCase/*[def,opt]*/)
  {
    _TDispID _dispid(/* GetByName */ DISPID(8));
    TAutoArgs<3> _args;
    _args[1] = name /*[VT_BSTR:0]*/;
    _args[2] = testFullName /*[VT_BOOL:0]*/;
    _args[3] = testIgnoreCase /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall FindIt(LPDISPATCH entity)
  {
    _TDispID _dispid(/* FindIt */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Add(LPDISPATCH entity)
  {
    _TDispID _dispid(/* Add */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DetachByIndex(long index)
  {
    _TDispID _dispid(/* DetachByIndex */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DetachByBody(LPDISPATCH entity)
  {
    _TDispID _dispid(/* DetachByBody */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = entity /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DetachByName(BSTR name)
  {
    _TDispID _dispid(/* DetachByName */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = name /*[VT_BSTR:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall NewViewProjection()
  {
    _TDispID _dispid(/* NewViewProjection */ DISPID(14));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksSelectionMng
// Flags:     (4096) Dispatchable
// GUID:      {BE41850C-CFC5-40D4-AE49-37AA391BCF4B}
// *********************************************************************//
interface ksSelectionMng : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall Select(LPDISPATCH obj)
  {
    _TDispID _dispid(/* Select */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Unselect(LPDISPATCH obj)
  {
    _TDispID _dispid(/* Unselect */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall UnselectAll()
  {
    _TDispID _dispid(/* UnselectAll */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsSelected(LPDISPATCH obj)
  {
    _TDispID _dispid(/* IsSelected */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetCount()
  {
    _TDispID _dispid(/* GetCount */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall First()
  {
    _TDispID _dispid(/* First */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Last()
  {
    _TDispID _dispid(/* Last */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Next()
  {
    _TDispID _dispid(/* Next */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Prev()
  {
    _TDispID _dispid(/* Prev */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetObjectByIndex(long index)
  {
    _TDispID _dispid(/* GetObjectByIndex */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetObjectType(long index)
  {
    _TDispID _dispid(/* GetObjectType */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksChooseMng
// Flags:     (4096) Dispatchable
// GUID:      {8F2AA755-D9D1-42A0-97BF-C92548CE7232}
// *********************************************************************//
interface ksChooseMng : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall Choose(LPDISPATCH obj)
  {
    _TDispID _dispid(/* Choose */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall UnChoose(LPDISPATCH obj)
  {
    _TDispID _dispid(/* UnChoose */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall UnChooseAll()
  {
    _TDispID _dispid(/* UnChooseAll */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall IsChoosen(LPDISPATCH obj)
  {
    _TDispID _dispid(/* IsChoosen */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetCount()
  {
    _TDispID _dispid(/* GetCount */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall First()
  {
    _TDispID _dispid(/* First */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Last()
  {
    _TDispID _dispid(/* Last */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Next()
  {
    _TDispID _dispid(/* Next */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall Prev()
  {
    _TDispID _dispid(/* Prev */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetObjectByIndex(long index)
  {
    _TDispID _dispid(/* GetObjectByIndex */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetObjectType(long index)
  {
    _TDispID _dispid(/* GetObjectType */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksArc3dParam
// Flags:     (4096) Dispatchable
// GUID:      {7DCBCC76-5041-4C1E-9B33-12B1352D6D57}
// *********************************************************************//
interface ksArc3dParam : public TDispWrapper<IDispatch>
{
  LPDISPATCH __fastcall GetPlacement()
  {
    _TDispID _dispid(/* GetPlacement */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_radius()
  {
    _TDispID _dispid(/* radius */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  double __fastcall get_angle()
  {
    _TDispID _dispid(/* angle */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          radius = {read = get_radius};
  __property   double          angle = {read = get_angle};
};
// *********************************************************************//
// Interface: ksTreeNodeParam
// Flags:     (4096) Dispatchable
// GUID:      {9F8DE1DC-1268-4785-9217-1B0DD59B85FA}
// *********************************************************************//
interface ksTreeNodeParam : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_type()
  {
    _TDispID _dispid(/* type */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  BSTR __fastcall get_name()
  {
    _TDispID _dispid(/* name */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetComment()
  {
    _TDispID _dispid(/* GetComment */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetNodes()
  {
    _TDispID _dispid(/* GetNodes */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            type = {read = get_type};
  __property   BSTR            name = {read = get_name};
};
// *********************************************************************//
// Interface: ksAssociationViewParam
// Flags:     (4096) Dispatchable
// GUID:      {C81EB1DA-BCB0-491A-8D22-923BF817D572}
// *********************************************************************//
interface ksAssociationViewParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_fileName(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* fileName */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_fileName()
  {
    _TDispID _dispid(/* fileName */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_projectionName(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* projectionName */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_projectionName()
  {
    _TDispID _dispid(/* projectionName */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_projectionLink(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* projectionLink */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_projectionLink()
  {
    _TDispID _dispid(/* projectionLink */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_disassembly(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* disassembly */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_disassembly()
  {
    _TDispID _dispid(/* disassembly */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_visibleLinesStyle(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* visibleLinesStyle */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_visibleLinesStyle()
  {
    _TDispID _dispid(/* visibleLinesStyle */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_hiddenLinesStyle(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* hiddenLinesStyle */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_hiddenLinesStyle()
  {
    _TDispID _dispid(/* hiddenLinesStyle */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_tangentEdgesStyle(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* tangentEdgesStyle */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_tangentEdgesStyle()
  {
    _TDispID _dispid(/* tangentEdgesStyle */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_hiddenLinesShow(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* hiddenLinesShow */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_hiddenLinesShow()
  {
    _TDispID _dispid(/* hiddenLinesShow */ DISPID(11));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_tangentEdgesShow(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* tangentEdgesShow */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_tangentEdgesShow()
  {
    _TDispID _dispid(/* tangentEdgesShow */ DISPID(12));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_projBodies(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* projBodies */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_projBodies()
  {
    _TDispID _dispid(/* projBodies */ DISPID(13));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_projSurfaces(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* projSurfaces */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_projSurfaces()
  {
    _TDispID _dispid(/* projSurfaces */ DISPID(14));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_projThreads(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* projThreads */ DISPID(15));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_projThreads()
  {
    _TDispID _dispid(/* projThreads */ DISPID(15));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_section(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* section */ DISPID(17));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_section()
  {
    _TDispID _dispid(/* section */ DISPID(17));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_sameHatch(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* sameHatch */ DISPID(19));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_sameHatch()
  {
    _TDispID _dispid(/* sameHatch */ DISPID(19));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetViewParam()
  {
    _TDispID _dispid(/* GetViewParam */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  short __fastcall get_viewType()
  {
    _TDispID _dispid(/* viewType */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetHatchParam()
  {
    _TDispID _dispid(/* GetHatchParam */ DISPID(16));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetDimensionLayoutScaling(TOLEBOOL scaling)
  {
    _TDispID _dispid(/* SetDimensionLayoutScaling */ DISPID(18));
    TAutoArgs<1> _args;
    _args[1] = scaling /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            fileName = {read = get_fileName, write = set_fileName};
  __property   BSTR            projectionName = {read = get_projectionName, write = set_projectionName};
  __property   TOLEBOOL        projectionLink = {read = get_projectionLink, write = set_projectionLink};
  __property   TOLEBOOL        disassembly = {read = get_disassembly, write = set_disassembly};
  __property   long            visibleLinesStyle = {read = get_visibleLinesStyle, write = set_visibleLinesStyle};
  __property   long            hiddenLinesStyle = {read = get_hiddenLinesStyle, write = set_hiddenLinesStyle};
  __property   long            tangentEdgesStyle = {read = get_tangentEdgesStyle, write = set_tangentEdgesStyle};
  __property   TOLEBOOL        hiddenLinesShow = {read = get_hiddenLinesShow, write = set_hiddenLinesShow};
  __property   TOLEBOOL        tangentEdgesShow = {read = get_tangentEdgesShow, write = set_tangentEdgesShow};
  __property   TOLEBOOL        projBodies = {read = get_projBodies, write = set_projBodies};
  __property   TOLEBOOL        projSurfaces = {read = get_projSurfaces, write = set_projSurfaces};
  __property   TOLEBOOL        projThreads = {read = get_projThreads, write = set_projThreads};
  __property   TOLEBOOL        section = {read = get_section, write = set_section};
  __property   TOLEBOOL        sameHatch = {read = get_sameHatch, write = set_sameHatch};
  __property   short           viewType = {read = get_viewType};
};
// *********************************************************************//
// Interface: ksViewColorParam
// Flags:     (4096) Dispatchable
// GUID:      {5A42B962-8F78-4557-B17A-1B871F8DBDB5}
// *********************************************************************//
interface ksViewColorParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_color(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* color */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_color()
  {
    _TDispID _dispid(/* color */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_useGradient(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* useGradient */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_useGradient()
  {
    _TDispID _dispid(/* useGradient */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_topColor(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* topColor */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_topColor()
  {
    _TDispID _dispid(/* topColor */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_bottomColor(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* bottomColor */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_bottomColor()
  {
    _TDispID _dispid(/* bottomColor */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            color = {read = get_color, write = set_color};
  __property   TOLEBOOL        useGradient = {read = get_useGradient, write = set_useGradient};
  __property   long            topColor = {read = get_topColor, write = set_topColor};
  __property   long            bottomColor = {read = get_bottomColor, write = set_bottomColor};
};
// *********************************************************************//
// Interface: ksAxisLineParam
// Flags:     (4096) Dispatchable
// GUID:      {AFE694D7-C1E5-468F-99B0-FE4C60C49899}
// *********************************************************************//
interface ksAxisLineParam : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetBegPoint()
  {
    _TDispID _dispid(/* GetBegPoint */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetEndPoint()
  {
    _TDispID _dispid(/* GetEndPoint */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksTextDocumentParam
// Flags:     (4096) Dispatchable
// GUID:      {33706D56-D085-4840-833B-435AEB00BE2A}
// *********************************************************************//
interface ksTextDocumentParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_fileName(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* fileName */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_fileName()
  {
    _TDispID _dispid(/* fileName */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_comment(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* comment */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_comment()
  {
    _TDispID _dispid(/* comment */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_author(BSTR /*[VT_BSTR:0]*/ Value)
  {
    _TDispID _dispid(/* author */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  BSTR /*[VT_BSTR:0]*/ __fastcall get_author()
  {
    _TDispID _dispid(/* author */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_type(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* type */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_type()
  {
    _TDispID _dispid(/* type */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_regime(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* regime */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_regime()
  {
    _TDispID _dispid(/* regime */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetFirstSheet()
  {
    _TDispID _dispid(/* GetFirstSheet */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetEvenSheet()
  {
    _TDispID _dispid(/* GetEvenSheet */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetOddSheet()
  {
    _TDispID _dispid(/* GetOddSheet */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetArrTitleSheet()
  {
    _TDispID _dispid(/* GetArrTitleSheet */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetArrTailSheet()
  {
    _TDispID _dispid(/* GetArrTailSheet */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSheetParam()
  {
    _TDispID _dispid(/* GetSheetParam */ DISPID(12));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   BSTR            fileName = {read = get_fileName, write = set_fileName};
  __property   BSTR            comment = {read = get_comment, write = set_comment};
  __property   BSTR            author = {read = get_author, write = set_author};
  __property   short           type = {read = get_type, write = set_type};
  __property   short           regime = {read = get_regime, write = set_regime};
};
// *********************************************************************//
// Interface: ksRemoteElementParam
// Flags:     (4096) Dispatchable
// GUID:      {25076616-4949-455E-A45C-1B801884D825}
// *********************************************************************//
interface ksRemoteElementParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_signType(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* signType */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_signType()
  {
    _TDispID _dispid(/* signType */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_x(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x()
  {
    _TDispID _dispid(/* x */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y()
  {
    _TDispID _dispid(/* y */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_width(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* width */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_width()
  {
    _TDispID _dispid(/* width */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_height(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* height */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_height()
  {
    _TDispID _dispid(/* height */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_radius(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* radius */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_radius()
  {
    _TDispID _dispid(/* radius */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_smooth(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* smooth */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_smooth()
  {
    _TDispID _dispid(/* smooth */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_shelfX(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* shelfX */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_shelfX()
  {
    _TDispID _dispid(/* shelfX */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_shelfY(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* shelfY */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_shelfY()
  {
    _TDispID _dispid(/* shelfY */ DISPID(11));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_shelfDir(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* shelfDir */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_shelfDir()
  {
    _TDispID _dispid(/* shelfDir */ DISPID(12));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init(long style)
  {
    _TDispID _dispid(/* Init */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = style /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetpText()
  {
    _TDispID _dispid(/* GetpText */ DISPID(13));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetpText(LPDISPATCH pText)
  {
    _TDispID _dispid(/* SetpText */ DISPID(14));
    TAutoArgs<1> _args;
    _args[1] = pText /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            style = {read = get_style, write = set_style};
  __property   long            signType = {read = get_signType, write = set_signType};
  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   double          width = {read = get_width, write = set_width};
  __property   double          height = {read = get_height, write = set_height};
  __property   double          radius = {read = get_radius, write = set_radius};
  __property   double          smooth = {read = get_smooth, write = set_smooth};
  __property   double          shelfX = {read = get_shelfX, write = set_shelfX};
  __property   double          shelfY = {read = get_shelfY, write = set_shelfY};
  __property   short           shelfDir = {read = get_shelfDir, write = set_shelfDir};
};
// *********************************************************************//
// Interface: ksDeletedCopyCollection
// Flags:     (4096) Dispatchable
// GUID:      {82F60797-D69C-4EB4-9F1A-24D625D5EAFA}
// *********************************************************************//
interface ksDeletedCopyCollection : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall refresh()
  {
    _TDispID _dispid(/* refresh */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetCount()
  {
    _TDispID _dispid(/* GetCount */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall First(long* index1, long* index2)
  {
    _TDispID _dispid(/* First */ DISPID(3));
    TAutoArgs<2> _args;
    _args[1] = index1 /*[VT_I4:1]*/;
    _args[2] = index2 /*[VT_I4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Last(long* index1, long* index2)
  {
    _TDispID _dispid(/* Last */ DISPID(4));
    TAutoArgs<2> _args;
    _args[1] = index1 /*[VT_I4:1]*/;
    _args[2] = index2 /*[VT_I4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Next(long* index1, long* index2)
  {
    _TDispID _dispid(/* Next */ DISPID(5));
    TAutoArgs<2> _args;
    _args[1] = index1 /*[VT_I4:1]*/;
    _args[2] = index2 /*[VT_I4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Prev(long* index1, long* index2)
  {
    _TDispID _dispid(/* Prev */ DISPID(6));
    TAutoArgs<2> _args;
    _args[1] = index1 /*[VT_I4:1]*/;
    _args[2] = index2 /*[VT_I4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetByIndex(long index, long* index1, long* index2)
  {
    _TDispID _dispid(/* GetByIndex */ DISPID(7));
    TAutoArgs<3> _args;
    _args[1] = index /*[VT_I4:0]*/;
    _args[2] = index1 /*[VT_I4:1]*/;
    _args[3] = index2 /*[VT_I4:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Clear()
  {
    _TDispID _dispid(/* Clear */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Add(long index1, long index2)
  {
    _TDispID _dispid(/* Add */ DISPID(9));
    TAutoArgs<2> _args;
    _args[1] = index1 /*[VT_I4:0]*/;
    _args[2] = index2 /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall AddAt(long index1, long index2, long index)
  {
    _TDispID _dispid(/* AddAt */ DISPID(10));
    TAutoArgs<3> _args;
    _args[1] = index1 /*[VT_I4:0]*/;
    _args[2] = index2 /*[VT_I4:0]*/;
    _args[3] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DetachByIndex(long index)
  {
    _TDispID _dispid(/* DetachByIndex */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall DetachByBody(long index1, long index2)
  {
    _TDispID _dispid(/* DetachByBody */ DISPID(12));
    TAutoArgs<2> _args;
    _args[1] = index1 /*[VT_I4:0]*/;
    _args[2] = index2 /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetByIndex(long index1, long index2, long index)
  {
    _TDispID _dispid(/* SetByIndex */ DISPID(13));
    TAutoArgs<3> _args;
    _args[1] = index1 /*[VT_I4:0]*/;
    _args[2] = index2 /*[VT_I4:0]*/;
    _args[3] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall FindIt(long index1, long index2)
  {
    _TDispID _dispid(/* FindIt */ DISPID(14));
    TAutoArgs<2> _args;
    _args[1] = index1 /*[VT_I4:0]*/;
    _args[2] = index2 /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksCopyObjectParam
// Flags:     (4096) Dispatchable
// GUID:      {AACAD820-7790-46EB-B17F-06AE42215ED7}
// *********************************************************************//
interface ksCopyObjectParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_objRef(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* objRef */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_objRef()
  {
    _TDispID _dispid(/* objRef */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_xOld(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* xOld */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_xOld()
  {
    _TDispID _dispid(/* xOld */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_yOld(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* yOld */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_yOld()
  {
    _TDispID _dispid(/* yOld */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_xNew(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* xNew */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_xNew()
  {
    _TDispID _dispid(/* xNew */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_yNew(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* yNew */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_yNew()
  {
    _TDispID _dispid(/* yNew */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_scale(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* scale */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_scale()
  {
    _TDispID _dispid(/* scale */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_angle(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angle */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angle()
  {
    _TDispID _dispid(/* angle */ DISPID(8));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_attrCopy(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* attrCopy */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_attrCopy()
  {
    _TDispID _dispid(/* attrCopy */ DISPID(9));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_dimLineScale(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* dimLineScale */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_dimLineScale()
  {
    _TDispID _dispid(/* dimLineScale */ DISPID(10));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_spcObjCopy(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* spcObjCopy */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_spcObjCopy()
  {
    _TDispID _dispid(/* spcObjCopy */ DISPID(11));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            objRef = {read = get_objRef, write = set_objRef};
  __property   double          xOld = {read = get_xOld, write = set_xOld};
  __property   double          yOld = {read = get_yOld, write = set_yOld};
  __property   double          xNew = {read = get_xNew, write = set_xNew};
  __property   double          yNew = {read = get_yNew, write = set_yNew};
  __property   double          scale = {read = get_scale, write = set_scale};
  __property   double          angle = {read = get_angle, write = set_angle};
  __property   TOLEBOOL        attrCopy = {read = get_attrCopy, write = set_attrCopy};
  __property   TOLEBOOL        dimLineScale = {read = get_dimLineScale, write = set_dimLineScale};
  __property   TOLEBOOL        spcObjCopy = {read = get_spcObjCopy, write = set_spcObjCopy};
};
// *********************************************************************//
// Interface: ksThreadDefinition
// Flags:     (4096) Dispatchable
// GUID:      {5DDB6B14-6F3D-431F-B62F-C5FCCAFC3632}
// *********************************************************************//
interface ksThreadDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_dr(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* dr */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_dr()
  {
    _TDispID _dispid(/* dr */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_length(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* length */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_length()
  {
    _TDispID _dispid(/* length */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_p(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* p */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_p()
  {
    _TDispID _dispid(/* p */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_autoDefinDr(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* autoDefinDr */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_autoDefinDr()
  {
    _TDispID _dispid(/* autoDefinDr */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_allLength(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* allLength */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_allLength()
  {
    _TDispID _dispid(/* allLength */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_faceValue(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* faceValue */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_faceValue()
  {
    _TDispID _dispid(/* faceValue */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall get_outside()
  {
    _TDispID _dispid(/* outside */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetBaseObject()
  {
    _TDispID _dispid(/* GetBaseObject */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetBaseObject(LPDISPATCH obj)
  {
    _TDispID _dispid(/* SetBaseObject */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetFaceBegin()
  {
    _TDispID _dispid(/* GetFaceBegin */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetFaceBegin(LPDISPATCH face)
  {
    _TDispID _dispid(/* SetFaceBegin */ DISPID(11));
    TAutoArgs<1> _args;
    _args[1] = face /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetFaceEnd()
  {
    _TDispID _dispid(/* GetFaceEnd */ DISPID(12));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetFaceEnd(LPDISPATCH face)
  {
    _TDispID _dispid(/* SetFaceEnd */ DISPID(13));
    TAutoArgs<1> _args;
    _args[1] = face /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          dr = {read = get_dr, write = set_dr};
  __property   double          length = {read = get_length, write = set_length};
  __property   double          p = {read = get_p, write = set_p};
  __property   TOLEBOOL        autoDefinDr = {read = get_autoDefinDr, write = set_autoDefinDr};
  __property   TOLEBOOL        allLength = {read = get_allLength, write = set_allLength};
  __property   TOLEBOOL        faceValue = {read = get_faceValue, write = set_faceValue};
  __property   TOLEBOOL        outside = {read = get_outside};
};
// *********************************************************************//
// Interface: ksOverlapObjectOptions
// Flags:     (4096) Dispatchable
// GUID:      {F78E6B71-BEF3-4A4D-AE50-FE96426F6FD1}
// *********************************************************************//
interface ksOverlapObjectOptions : public TDispWrapper<IDispatch>
{
  void __fastcall set_overlap(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* overlap */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_overlap()
  {
    _TDispID _dispid(/* overlap */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_gap(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* gap */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_gap()
  {
    _TDispID _dispid(/* gap */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        overlap = {read = get_overlap, write = set_overlap};
  __property   double          gap = {read = get_gap, write = set_gap};
};
// *********************************************************************//
// Interface: ksObjectsFilter3D
// Flags:     (4096) Dispatchable
// GUID:      {ABBA6CE0-CB4C-4A32-98B4-B639352C75BA}
// *********************************************************************//
interface ksObjectsFilter3D : public TDispWrapper<IDispatch>
{
  void __fastcall set_filterAll(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* filterAll */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_filterAll()
  {
    _TDispID _dispid(/* filterAll */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_filterFaces(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* filterFaces */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_filterFaces()
  {
    _TDispID _dispid(/* filterFaces */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_filterEdges(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* filterEdges */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_filterEdges()
  {
    _TDispID _dispid(/* filterEdges */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_filterVertexs(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* filterVertexs */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_filterVertexs()
  {
    _TDispID _dispid(/* filterVertexs */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_filterCPlanes(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* filterCPlanes */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_filterCPlanes()
  {
    _TDispID _dispid(/* filterCPlanes */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_filterCAxis(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* filterCAxis */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_filterCAxis()
  {
    _TDispID _dispid(/* filterCAxis */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        filterAll = {read = get_filterAll, write = set_filterAll};
  __property   TOLEBOOL        filterFaces = {read = get_filterFaces, write = set_filterFaces};
  __property   TOLEBOOL        filterEdges = {read = get_filterEdges, write = set_filterEdges};
  __property   TOLEBOOL        filterVertexs = {read = get_filterVertexs, write = set_filterVertexs};
  __property   TOLEBOOL        filterCPlanes = {read = get_filterCPlanes, write = set_filterCPlanes};
  __property   TOLEBOOL        filterCAxis = {read = get_filterCAxis, write = set_filterCAxis};
};
// *********************************************************************//
// Interface: ksParametrizationParam
// Flags:     (4096) Dispatchable
// GUID:      {ABBA6CE0-CB4C-4A32-98B4-B639352C75BB}
// *********************************************************************//
interface ksParametrizationParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_nearestPoints(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* nearestPoints */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_nearestPoints()
  {
    _TDispID _dispid(/* nearestPoints */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_pointsLimit(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* pointsLimit */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_pointsLimit()
  {
    _TDispID _dispid(/* pointsLimit */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_horizontal(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* horizontal */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_horizontal()
  {
    _TDispID _dispid(/* horizontal */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_vertical(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* vertical */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_vertical()
  {
    _TDispID _dispid(/* vertical */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_parallel(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* parallel */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_parallel()
  {
    _TDispID _dispid(/* parallel */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_perpendicular(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* perpendicular */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_perpendicular()
  {
    _TDispID _dispid(/* perpendicular */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_angleLimit(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* angleLimit */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_angleLimit()
  {
    _TDispID _dispid(/* angleLimit */ DISPID(7));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(8));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        nearestPoints = {read = get_nearestPoints, write = set_nearestPoints};
  __property   double          pointsLimit = {read = get_pointsLimit, write = set_pointsLimit};
  __property   TOLEBOOL        horizontal = {read = get_horizontal, write = set_horizontal};
  __property   TOLEBOOL        vertical = {read = get_vertical, write = set_vertical};
  __property   TOLEBOOL        parallel = {read = get_parallel, write = set_parallel};
  __property   TOLEBOOL        perpendicular = {read = get_perpendicular, write = set_perpendicular};
  __property   double          angleLimit = {read = get_angleLimit, write = set_angleLimit};
};
// *********************************************************************//
// Interface: ksMacro3DDefinition
// Flags:     (4096) Dispatchable
// GUID:      {02556461-D088-4F00-AE61-D366082DB9BC}
// *********************************************************************//
interface ksMacro3DDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_StaffVisible(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* StaffVisible */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_StaffVisible()
  {
    _TDispID _dispid(/* StaffVisible */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_DoubleClickEditOff(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* DoubleClickEditOff */ DISPID(12));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_DoubleClickEditOff()
  {
    _TDispID _dispid(/* DoubleClickEditOff */ DISPID(12));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  Kompas6api5_tlb::ksFeatureCollectionPtr __fastcall FeatureCollection()
  {
    _TDispID _dispid(/* FeatureCollection */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return (Kompas6api5_tlb::ksFeatureCollection* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
  }

  TOLEBOOL __fastcall Destroy()
  {
    _TDispID _dispid(/* Destroy */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Add(LPDISPATCH obj)
  {
    _TDispID _dispid(/* Add */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetUserParam(LPDISPATCH userPars)
  {
    _TDispID _dispid(/* SetUserParam */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = userPars /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetUserParamSize()
  {
    _TDispID _dispid(/* GetUserParamSize */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetUserParam(LPDISPATCH userPars)
  {
    _TDispID _dispid(/* GetUserParam */ DISPID(7));
    TAutoArgs<1> _args;
    _args[1] = userPars /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetObject(long index, LPDISPATCH obj)
  {
    _TDispID _dispid(/* SetObject */ DISPID(8));
    TAutoArgs<2> _args;
    _args[1] = index /*[VT_I4:0]*/;
    _args[2] = obj /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetObject(long index)
  {
    _TDispID _dispid(/* GetObject */ DISPID(9));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetCountObj()
  {
    _TDispID _dispid(/* GetCountObj */ DISPID(10));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall ClearAllObj()
  {
    _TDispID _dispid(/* ClearAllObj */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        StaffVisible = {read = get_StaffVisible, write = set_StaffVisible};
  __property   TOLEBOOL        DoubleClickEditOff = {read = get_DoubleClickEditOff, write = set_DoubleClickEditOff};
};
// *********************************************************************//
// Interface: ksAxisConefaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {97337DAF-B7CD-4FB8-8E18-23F0230E5CBE}
// *********************************************************************//
interface ksAxisConefaceDefinition : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall SetFace(LPDISPATCH face)
  {
    _TDispID _dispid(/* SetFace */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = face /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetFace()
  {
    _TDispID _dispid(/* GetFace */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetCurve3D()
  {
    _TDispID _dispid(/* GetCurve3D */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksUnionComponentsDefinition
// Flags:     (4096) Dispatchable
// GUID:      {99797F89-FBA4-4582-812F-226AFB50ED7D}
// *********************************************************************//
interface ksUnionComponentsDefinition : public TDispWrapper<IDispatch>
{
  LPDISPATCH __fastcall PartArray()
  {
    _TDispID _dispid(/* PartArray */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksMoldCavityDefinition
// Flags:     (4096) Dispatchable
// GUID:      {BE5F10F5-B198-49D9-9140-B2B91E060533}
// *********************************************************************//
interface ksMoldCavityDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_scale(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* scale */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_scale()
  {
    _TDispID _dispid(/* scale */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall PartArray()
  {
    _TDispID _dispid(/* PartArray */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetScaleCentre()
  {
    _TDispID _dispid(/* GetScaleCentre */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetScaleCentre(LPDISPATCH vert)
  {
    _TDispID _dispid(/* SetScaleCentre */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = vert /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          scale = {read = get_scale, write = set_scale};
};
// *********************************************************************//
// Interface: ksCoordinate3dCollection
// Flags:     (4096) Dispatchable
// GUID:      {E4091969-1C4E-4959-8D93-C2421564418B}
// *********************************************************************//
interface ksCoordinate3dCollection : public TDispWrapper<IDispatch>
{
  long __fastcall GetCount()
  {
    _TDispID _dispid(/* GetCount */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetByIndex(long index, double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetByIndex */ DISPID(2));
    TAutoArgs<4> _args;
    _args[1] = index /*[VT_I4:0]*/;
    _args[2] = x /*[VT_R8:1]*/;
    _args[3] = y /*[VT_R8:1]*/;
    _args[4] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetSafeArray(TVariant* array)
  {
    _TDispID _dispid(/* GetSafeArray */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = array /*[VT_VARIANT:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksIntersectionResult
// Flags:     (4096) Dispatchable
// GUID:      {ABC7F8EE-CF07-4AA8-98A1-0DE35DB35B9E}
// *********************************************************************//
interface ksIntersectionResult : public TDispWrapper<IDispatch>
{
  long __fastcall GetCount()
  {
    _TDispID _dispid(/* GetCount */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall GetIntersectionType(long index)
  {
    _TDispID _dispid(/* GetIntersectionType */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksPlaneMiddleDefinition
// Flags:     (4096) Dispatchable
// GUID:      {CC5E3539-5B35-46FC-AFE1-19BB0168D52F}
// *********************************************************************//
interface ksPlaneMiddleDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_position(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* position */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_position()
  {
    _TDispID _dispid(/* position */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetObject(long number, LPDISPATCH val)
  {
    _TDispID _dispid(/* SetObject */ DISPID(2));
    TAutoArgs<2> _args;
    _args[1] = number /*[VT_I4:0]*/;
    _args[2] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetObject(long number)
  {
    _TDispID _dispid(/* GetObject */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = number /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetSurface()
  {
    _TDispID _dispid(/* GetSurface */ DISPID(4));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        position = {read = get_position, write = set_position};
};
// *********************************************************************//
// Interface: ksControlPointDefinition
// Flags:     (4096) Dispatchable
// GUID:      {BC4C15A4-16E9-4CFA-A33E-CC86BA2FB546}
// *********************************************************************//
interface ksControlPointDefinition : public TDispWrapper<IDispatch>
{
  TOLEBOOL __fastcall SetVertex(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetVertex */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetVertex()
  {
    _TDispID _dispid(/* GetVertex */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetPoint(double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetPoint */ DISPID(3));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    _args[3] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


};
// *********************************************************************//
// Interface: ksConjunctivePointDefinition
// Flags:     (4096) Dispatchable
// GUID:      {177CBAF3-87E6-4376-B6A9-669C0E661BFF}
// *********************************************************************//
interface ksConjunctivePointDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_direction(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* direction */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_direction()
  {
    _TDispID _dispid(/* direction */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetVertex(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetVertex */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetVertex()
  {
    _TDispID _dispid(/* GetVertex */ DISPID(3));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetEdge(LPDISPATCH val)
  {
    _TDispID _dispid(/* SetEdge */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = val /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetEdge()
  {
    _TDispID _dispid(/* GetEdge */ DISPID(5));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetPoint(double* x, double* y, double* z)
  {
    _TDispID _dispid(/* GetPoint */ DISPID(6));
    TAutoArgs<3> _args;
    _args[1] = x /*[VT_R8:1]*/;
    _args[2] = y /*[VT_R8:1]*/;
    _args[3] = z /*[VT_R8:1]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        direction = {read = get_direction, write = set_direction};
};
// *********************************************************************//
// Interface: ksChooseBodies
// Flags:     (4096) Dispatchable
// GUID:      {E06B18BF-D2AF-4201-99BE-B7FA9EECF7A8}
// *********************************************************************//
interface ksChooseBodies : public TDispWrapper<IDispatch>
{
  void __fastcall set_ChooseBodiesType(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* ChooseBodiesType */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_ChooseBodiesType()
  {
    _TDispID _dispid(/* ChooseBodiesType */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall BodyCollection()
  {
    _TDispID _dispid(/* BodyCollection */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            ChooseBodiesType = {read = get_ChooseBodiesType, write = set_ChooseBodiesType};
};
// *********************************************************************//
// Interface: ksAggregateDefinition
// Flags:     (4096) Dispatchable
// GUID:      {44277B89-EEB4-456C-8EF9-2DC48D61EC91}
// *********************************************************************//
interface ksAggregateDefinition : public TDispWrapper<IDispatch>
{
  void __fastcall set_BooleanType(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* BooleanType */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_BooleanType()
  {
    _TDispID _dispid(/* BooleanType */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall BodyCollection()
  {
    _TDispID _dispid(/* BodyCollection */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            BooleanType = {read = get_BooleanType, write = set_BooleanType};
};
// *********************************************************************//
// Interface: ksChangeLeaderParam
// Flags:     (4096) Dispatchable
// GUID:      {391938AE-79B6-4E3B-9815-AC1A31D9EA9D}
// *********************************************************************//
interface ksChangeLeaderParam : public TDispWrapper<IDispatch>
{
  void __fastcall set_x(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_x()
  {
    _TDispID _dispid(/* x */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_y(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_y()
  {
    _TDispID _dispid(/* y */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_signType(short /*[VT_I2:0]*/ Value)
  {
    _TDispID _dispid(/* signType */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  short /*[VT_I2:0]*/ __fastcall get_signType()
  {
    _TDispID _dispid(/* signType */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_signHeight(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* signHeight */ DISPID(4));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_signHeight()
  {
    _TDispID _dispid(/* signHeight */ DISPID(4));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_leaderLength(double /*[VT_R8:0]*/ Value)
  {
    _TDispID _dispid(/* leaderLength */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  double /*[VT_R8:0]*/ __fastcall get_leaderLength()
  {
    _TDispID _dispid(/* leaderLength */ DISPID(5));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  void __fastcall set_style(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* style */ DISPID(6));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_style()
  {
    _TDispID _dispid(/* style */ DISPID(6));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetpTextline()
  {
    _TDispID _dispid(/* GetpTextline */ DISPID(7));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetpTextline(LPDISPATCH pTextLine)
  {
    _TDispID _dispid(/* SetpTextline */ DISPID(8));
    TAutoArgs<1> _args;
    _args[1] = pTextLine /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall GetpPolyline()
  {
    _TDispID _dispid(/* GetpPolyline */ DISPID(9));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetpPolyline(LPDISPATCH pPolyline)
  {
    _TDispID _dispid(/* SetpPolyline */ DISPID(10));
    TAutoArgs<1> _args;
    _args[1] = pPolyline /*[VT_DISPATCH:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall Init()
  {
    _TDispID _dispid(/* Init */ DISPID(11));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   short           signType = {read = get_signType, write = set_signType};
  __property   double          signHeight = {read = get_signHeight, write = set_signHeight};
  __property   double          leaderLength = {read = get_leaderLength, write = set_leaderLength};
  __property   long            style = {read = get_style, write = set_style};
};
// *********************************************************************//
// Interface: ksChooseParts
// Flags:     (4096) Dispatchable
// GUID:      {08B7A093-D829-44A9-A238-2BFF31770112}
// *********************************************************************//
interface ksChooseParts : public TDispWrapper<IDispatch>
{
  void __fastcall set_ChoosePartsType(long /*[VT_I4:0]*/ Value)
  {
    _TDispID _dispid(/* ChoosePartsType */ DISPID(1));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  long /*[VT_I4:0]*/ __fastcall get_ChoosePartsType()
  {
    _TDispID _dispid(/* ChoosePartsType */ DISPID(1));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  LPDISPATCH __fastcall PartCollection()
  {
    _TDispID _dispid(/* PartCollection */ DISPID(2));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   long            ChoosePartsType = {read = get_ChoosePartsType, write = set_ChoosePartsType};
};
// *********************************************************************//
// Interface: ksBodyParts
// Flags:     (4096) Dispatchable
// GUID:      {1E3E9348-DB9B-4967-A62A-B412DF95146A}
// *********************************************************************//
interface ksBodyParts : public TDispWrapper<IDispatch>
{
  void __fastcall set_AllSelected(TOLEBOOL /*[VT_BOOL:0]*/ Value)
  {
    _TDispID _dispid(/* AllSelected */ DISPID(3));
    TAutoArgs<1> _args;
    _args[1] = Value;
    OlePropertyPut(_dispid, _args);
  }

  TOLEBOOL /*[VT_BOOL:0]*/ __fastcall get_AllSelected()
  {
    _TDispID _dispid(/* AllSelected */ DISPID(3));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall UserBodyPartsChoice()
  {
    _TDispID _dispid(/* UserBodyPartsChoice */ DISPID(1));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  long __fastcall get_count()
  {
    _TDispID _dispid(/* count */ DISPID(2));
    TAutoArgs<0> _args;
    OlePropertyGet(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetPartSelected(long index, TOLEBOOL Select)
  {
    _TDispID _dispid(/* SetPartSelected */ DISPID(4));
    TAutoArgs<2> _args;
    _args[1] = index /*[VT_I4:0]*/;
    _args[2] = Select /*[VT_BOOL:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall GetPartSelected(long index)
  {
    _TDispID _dispid(/* GetPartSelected */ DISPID(5));
    TAutoArgs<1> _args;
    _args[1] = index /*[VT_I4:0]*/;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }

  TOLEBOOL __fastcall SetGreatPartsSelected()
  {
    _TDispID _dispid(/* SetGreatPartsSelected */ DISPID(6));
    TAutoArgs<0> _args;
    OleFunction(_dispid, _args);
    return _args.GetRetVariant();
  }


  __property   TOLEBOOL        AllSelected = {read = get_AllSelected, write = set_AllSelected};
  __property   long            count = {read = get_count};
};
#if !defined(__TLB_NO_INTERFACE_WRAPPERS)
// *********************************************************************//
// DispIntf:  KompasObject
// Flags:     (4096) Dispatchable
// GUID:      {E36BC97C-39D6-4402-9C25-C7008A217E02}
// *********************************************************************//
template<class T>
class KompasObjectDispT : public TAutoDriver<KompasObject>
{
public:
  KompasObjectDispT(){}

  KompasObjectDispT(KompasObject *pintf)
  {
    TAutoDriver<KompasObject>::Bind(pintf, false);
  }

  KompasObjectDispT(KompasObjectPtr pintf)
  {
    TAutoDriver<KompasObject>::Bind(pintf, true);
  }

  KompasObjectDispT& operator=(KompasObject *pintf)
  {
    TAutoDriver<KompasObject>::Bind(pintf, false);
    return *this;
  }

  KompasObjectDispT& operator=(KompasObjectPtr pintf)
  {
    TAutoDriver<KompasObject>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_App));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_App);
  }

  void            __fastcall set_Visible(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_Visible();
  void            __fastcall set_lookStyle(long Value);
  long            __fastcall get_lookStyle();
  LPDISPATCH      __fastcall Document3D();
  LPDISPATCH      __fastcall ActiveDocument3D();
  LPDISPATCH      __fastcall Document2D();
  LPDISPATCH      __fastcall ActiveDocument2D();
  LPDISPATCH      __fastcall DataBaseObject();
  LPDISPATCH      __fastcall GetIterator();
  LPDISPATCH      __fastcall GetMathematic2D();
  LPDISPATCH      __fastcall GetParamStruct(short structType);
  LPDISPATCH      __fastcall SpcDocument();
  LPDISPATCH      __fastcall SpcActiveDocument();
  TOLEBOOL        __fastcall ksMessage(BSTR s);
  TOLEBOOL        __fastcall ksError(BSTR s);
  TOLEBOOL        __fastcall ksEnableTaskAccess(long enabl/*[def,opt]*/);
  long            __fastcall ksReturnResult();
  long            __fastcall ksResultNULL();
  long            __fastcall ksIsEnableTaskAccess();
  TOLEBOOL        __fastcall ksMessageBoxResult();
  long            __fastcall ksDrawSlide(long HWindow, long sldID);
  BSTR            __fastcall ksStrResult();
  long            __fastcall ksGetHWindow();
  long            __fastcall ksGetWorkWindowColor();
  TOLEBOOL        __fastcall ksPumpWaitingMessages();
  long            __fastcall ksSetCriticalProcess();
  BSTR            __fastcall ksChoiceFile(BSTR ext, BSTR filter, TOLEBOOL preview);
  long            __fastcall ksDrawBitmap(long HWindow, long sldID);
  long            __fastcall ksYesNo(BSTR s);
  long            __fastcall ksDrawSlideFromFile(long HWindow, BSTR fileName);
  long            __fastcall ksWriteSlide(BSTR fileName, long iD, double x, double y);
  TOLEBOOL        __fastcall ksSlideBackground(long color);
  long            __fastcall ksReadDouble(BSTR mess, double defValue, double min, double max, 
                                          double* value);
  long            __fastcall ksReadInt(BSTR mess, long defValue, long min, long max, long* value);
  BSTR            __fastcall ksReadString(BSTR mess, BSTR value);
  BSTR            __fastcall ksFullFileName(BSTR oldName);
  BSTR            __fastcall ksUniqueFileName();
  TOLEBOOL        __fastcall ksRemoveUniqueFile(BSTR fileName);
  TOLEBOOL        __fastcall ksSystemControlStop();
  long            __fastcall ksSystemControlStart(BSTR menuCommand);
  LPDISPATCH      __fastcall GetDynamicArray(long type);
  BSTR            __fastcall ksChoiceFileAppointedDir(BSTR ext, BSTR filter, TOLEBOOL preview, 
                                                      long typeDir);
  long            __fastcall ksChoiceFiles(BSTR ext, BSTR filter, LPDISPATCH p, TOLEBOOL preview);
  BSTR            __fastcall ksSaveFile(BSTR ext, BSTR oldName, BSTR filter, TOLEBOOL preview);
  LPDISPATCH      __fastcall GetAttributeObject();
  long            __fastcall ksRefreshActiveWindow();
  BSTR            __fastcall ksSystemPath(long pathType);
  BSTR            __fastcall ksGetRelativePathFromSystemPath(BSTR sourcePath, long pathType);
  BSTR            __fastcall ksGetFullPathFromSystemPath(BSTR relativePath, long pathType);
  BSTR            __fastcall ksGetRelativePathFromFullPath(BSTR mainFilePath, BSTR sourcePath);
  BSTR            __fastcall ksGetFullPathFromRelativePath(BSTR mainFilePath, BSTR relativePath);
  long            __fastcall ksGetSystemVersion(long* iMajor, long* iMinor, long* iRelease, 
                                                long* iBuild);
  BSTR            __fastcall ksGetSystemProfileString(BSTR lpSection, BSTR lpKey);
  TOLEBOOL        __fastcall ksOpenHelpFile(BSTR file, long command, long iD);
  long            __fastcall ksSetSysOptions(long optionsType, LPDISPATCH param);
  long            __fastcall ksGetSysOptions(long optionsType, LPDISPATCH param);
  long            __fastcall ksPrintPreviewWindow(LPDISPATCH docsArr, long inquiry);
  LPDISPATCH      __fastcall ksGetLibraryStylesArray(BSTR libraryName, short libraryType);
  double          __fastcall ksViewGetDensity(long HWindow);
  long            __fastcall ksCalculate(BSTR s, double* rez);
  long            __fastcall ksCalculateReset();
  long            __fastcall ksExecuteLibraryCommand(BSTR fileName, long command);
  long            __fastcall ksGetQualityNames(LPDISPATCH names, double dimValue, double high, 
                                               double low, short system, short withLimitation);
  long            __fastcall ksGetQualityDefects(BSTR name, double dimValue, double* high, 
                                                 double* low, short inMM);
  long            __fastcall ksGetQualityContensParam(BSTR name, LPDISPATCH param, short inMM);
  LPDISPATCH      __fastcall ksGet3dDocumentFromRef(long doc);
  LPDISPATCH      __fastcall GetModelLibrary();
  LPDISPATCH      __fastcall GetFragmentLibrary();
  long            __fastcall ksIsLibraryEnabled(BSTR libName);
  long            __fastcall ksIsModuleSpecificationActive();
  long            __fastcall ksModuleSpecification(TOLEBOOL attach);
  BSTR            __fastcall ksMaterialDlg(long HWindow, long* res, double* plt, double* kod_size_1
                                           , double* kod_size_2, double* kod_size_3, 
                                           double* kod_size_4, BSTR kod_tip);
  BSTR            __fastcall ksExecDialPredefinedText(long HWindow, long* res);
  long            __fastcall ksDrawSlideEx(long HWindow, long sldID, long hInst);
  BSTR            __fastcall ksViewGetDensityAndMaterial(double* density, long HWindow);
  BSTR            __fastcall ksConvertLangStr(BSTR src);
  TOLEBOOL        __fastcall ksConvertLangWindow(long hWnd);
  long            __fastcall ksConvertLangMenu(long hMenu);
  BSTR            __fastcall ksEditTextLine(long HWindow, long* res, BSTR str);
  long            __fastcall ksGetDocOptions(long optionsType, LPDISPATCH param);
  long            __fastcall ksAttachKompasLibrary(BSTR libName);
  long            __fastcall ksDetachKompasLibrary(long libId);
  long            __fastcall ksExecuteKompasLibraryCommand(long libId, long command);
  void            __fastcall Quit();
  long            __fastcall ksPrintKompasDocument(BSTR fileName, BSTR toFile, double scale);
  long            __fastcall ksDrawKompasDocument(long HWindow, BSTR docFileName);
  TOLEBOOL        __fastcall ksSetFlagDisableLockApp(TOLEBOOL setDisableLockApp);
  TOLEBOOL        __fastcall ActivateControllerAPI();
  LPDISPATCH      __fastcall DocumentTxt();
  LPDISPATCH      __fastcall ActiveDocumentTxt();
  TOLEBOOL        __fastcall ksGetLibraryTreeStruct(BSTR libName, LPDISPATCH p);
  long            __fastcall ksSetDocOptions(long optionsType, LPDISPATCH param);
  long            __fastcall ksGetDocumentType(long doc/*[def,opt]*/);
  long            __fastcall ksDrawKompasDocumentByReference(long HWindow, long pDoc);
  LPDISPATCH      __fastcall ksExecDialPredefinedTextEx(long HWindow);
  long            __fastcall ksGetDocumentTypeByName(BSTR fileName);
  LPDISPATCH      __fastcall ksGetDocumentByReference(long docRef);
  BSTR            __fastcall ksConvertLangStrEx(long hInstance, long strID);
  TOLEBOOL        __fastcall ksConvertLangWindowEx(long hWnd, long hInstance, BSTR dlgID);
  TOLEBOOL        __fastcall LoadDSK();
  LPDISPATCH      __fastcall GetObjectsFilter3D();
  long            __fastcall ksExecuteKompasLibraryCommandEx(long libId, long command, 
                                                             LPDISPATCH external);
  LPDISPATCH      __fastcall ksGetExternaldispinterface();
  LPDISPATCH      __fastcall ksGetApplication7();
  long            __fastcall ksDrawBitmapEx(long HWindow, long bmpID, long hInst);
  long            __fastcall ksGetSystemControlStartResult();
  long            __fastcall ksIsModule3DActive();
  long            __fastcall ksModule3D(TOLEBOOL attach);
  LPUNKNOWN       __fastcall TransferInterface(LPUNKNOWN obj, long apiNewType, long objNewType);
  TOLEBOOL        __fastcall ksExecuteKompasCommand(long commandID, TOLEBOOL post);
  TOLEBOOL        __fastcall ksIsKompasCommandEnable(long commandID);
  long            __fastcall ksIsKompasCommandCheck(long commandID);
  LPUNKNOWN       __fastcall TransferReference(long obj, long docRef);
  long            __fastcall ksDrawKompasText(long HWindow, BSTR text);
  long            __fastcall ksPrintKompasDocumentEx(BSTR fileName, BSTR toFile, double scale, 
                                                     TOLEBOOL FKompasPrinter);
  int             __fastcall ksExecDialSpecialSymbol(long HWindow);
  BSTR            __fastcall ksExecDialSymbol(long HWindow, long* symb, BSTR font);

  __property   TOLEBOOL        Visible = {read = get_Visible, write = set_Visible};
  __property   long            lookStyle = {read = get_lookStyle, write = set_lookStyle};
};
typedef KompasObjectDispT<KompasObject> KompasObjectDisp;

// *********************************************************************//
// DispIntf:  ksDocument2D
// Flags:     (4096) Dispatchable
// GUID:      {AF4E160D-5C89-4F21-B0F2-D53397BDAF78}
// *********************************************************************//
template<class T>
class ksDocument2DDispT : public TAutoDriver<ksDocument2D>
{
public:
  ksDocument2DDispT(){}

  ksDocument2DDispT(ksDocument2D *pintf)
  {
    TAutoDriver<ksDocument2D>::Bind(pintf, false);
  }

  ksDocument2DDispT(ksDocument2DPtr pintf)
  {
    TAutoDriver<ksDocument2D>::Bind(pintf, true);
  }

  ksDocument2DDispT& operator=(ksDocument2D *pintf)
  {
    TAutoDriver<ksDocument2D>::Bind(pintf, false);
    return *this;
  }

  ksDocument2DDispT& operator=(ksDocument2DPtr pintf)
  {
    TAutoDriver<ksDocument2D>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Document2D));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Document2D);
  }

  void            __fastcall set_reference(long Value);
  long            __fastcall get_reference();
  void            __fastcall set_orthoMode(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_orthoMode();
  long            __fastcall ksLineSeg(double x1, double y1, double x2, double y2, long style);
  long            __fastcall ksRectangle(LPDISPATCH par, short centre/*[def,opt]*/);
  long            __fastcall ksCircle(double xc, double yc, double rad, long style);
  long            __fastcall ksArcByAngle(double xc, double yc, double rad, double f1, double f2, 
                                          short direction, long style);
  long            __fastcall ksArcByPoint(double xc, double yc, double rad, double x1, double y1, 
                                          double x2, double y2, short direction, long style);
  long            __fastcall ksArcBy3Points(double x1, double y1, double x2, double y2, double x3, 
                                            double y3, long style);
  long            __fastcall ksGetObjParam(long ref, LPDISPATCH param, long parType/*[def,opt]*/);
  long            __fastcall ksSetObjParam(long referObj, LPDISPATCH param, 
                                           long parType/*[def,opt]*/);
  long            __fastcall ksContour(long style);
  long            __fastcall ksMacro(short type);
  long            __fastcall ksParagraph(LPDISPATCH par);
  long            __fastcall ksTextLine(LPDISPATCH textItem);
  long            __fastcall ksUpdateMacro(long macro, long gr);
  long            __fastcall ksLine(double x, double y, double angle);
  long            __fastcall ksPoint(double x, double y, long style);
  long            __fastcall ksText(double x, double y, double ang, double hStr, double ksuStr, 
                                    long bitVector, BSTR s);
  long            __fastcall ksHatchByParam(LPDISPATCH param);
  long            __fastcall ksEndObj();
  long            __fastcall ksLayer(long n);
  long            __fastcall ksGetLayerNumber(long p);
  long            __fastcall ksGetLayerReference(long number);
  long            __fastcall ksChangeObjectLayer(long obj, long number);
  long            __fastcall ksNewGroup(short type);
  long            __fastcall ksEndGroup();
  long            __fastcall ksMakeEncloseContours(long gr, double x, double y);
  long            __fastcall ksIsCursorOrPlacementDocument();
  long            __fastcall ksIsActiveProcessRunnig();
  long            __fastcall ksPhantomShowHide(BSTR show);
  long            __fastcall ksGetCursorPosition(double* x, double* y, long type);
  long            __fastcall ksKeepReference(long r);
  long            __fastcall ksGetMacroParamSize(long ref);
  long            __fastcall ksEditMacroMode();
  long            __fastcall ksDeleteObj(long ref);
  long            __fastcall ksMoveObj(long ref, double x, double y);
  long            __fastcall ksRotateObj(long ref, double x, double y, double angle);
  long            __fastcall ksTransformObj(long ref);
  long            __fastcall ksLightObj(long ref, short light);
  long            __fastcall ksFindObj(double x, double y, double limit);
  long            __fastcall ksSymmetryObj(long ref, double x1, double y1, double x2, double y2, 
                                           BSTR copy);
  long            __fastcall ksCopyObj(long ref, double xOld, double yOld, double xNew, double yNew
                                       , double scale, double angle);
  long            __fastcall ksCreateViewObject(long type);
  long            __fastcall ksEditViewObject(long ref);
  long            __fastcall ksAnnLineSeg(double x1, double y1, double x2, double y2, short term1, 
                                          short term2, long style);
  long            __fastcall ksPointArraw(double x, double y, double ang, short term);
  long            __fastcall ksAnnArcByPoint(double xc, double yc, double rad, double x1, double y1
                                             , double x2, double y2, short direction, short term1, 
                                             short term2, long style);
  long            __fastcall ksEllipse(LPDISPATCH par);
  long            __fastcall ksEllipseArc(LPDISPATCH par);
  long            __fastcall ksParEllipseArc(LPDISPATCH par);
  long            __fastcall ksEquidistant(LPDISPATCH par);
  long            __fastcall ksIsPointInsideContour(long p, double x, double y, double precision);
  long            __fastcall ksConvertTextToCurve(long text);
  long            __fastcall ksStoreTmpGroup(long g);
  long            __fastcall ksOpenMacro(long macro);
  long            __fastcall ksAddObjectToMacro(long macro, long obj);
  long            __fastcall ksHatch(long style, double angle, double step, double width, double x0
                                     , double y0);
  long            __fastcall ksColouring(long color);
  long            __fastcall ksDuplicateBoundaries(long p);
  long            __fastcall ksNurbsPoint(LPDISPATCH par);
  long            __fastcall ksNurbsKnot(double knot);
  long            __fastcall ksNurbs(short degree, TOLEBOOL close, long style);
  long            __fastcall ksRegularPolygon(LPDISPATCH par, short centre/*[def,opt]*/);
  long            __fastcall ksClearGroup(long g, TOLEBOOL deleteTmp);
  long            __fastcall ksExcludeObjGroup(long g, long p);
  long            __fastcall ksAddObjGroup(long g, long p);
  long            __fastcall ksSaveGroup(long g, BSTR name);
  long            __fastcall ksSelectGroup(long g, short selectMode, double xmin, double ymin, 
                                           double xmax, double ymax);
  long            __fastcall ksExistGroupObj(long g);
  long            __fastcall ksWriteGroupToClip(long g, TOLEBOOL copy);
  long            __fastcall ksGetGroup(BSTR name);
  long            __fastcall ksReadGroupFromClip();
  long            __fastcall ksConicArc(LPDISPATCH par);
  long            __fastcall ksCentreMarker(LPDISPATCH par);
  long            __fastcall ksBezier(short closed, long style);
  long            __fastcall ksBezierPoint(LPDISPATCH par);
  long            __fastcall ksGetStyleParam(short type, short styleId, LPDISPATCH param);
  long            __fastcall ksInsertRaster(LPDISPATCH par);
  long            __fastcall ksLinDimension(LPDISPATCH linPar);
  long            __fastcall ksAngDimension(LPDISPATCH angPar);
  long            __fastcall ksDiamDimension(LPDISPATCH par);
  long            __fastcall ksRadDimension(LPDISPATCH par);
  long            __fastcall ksRadBreakDimension(LPDISPATCH par);
  long            __fastcall ksOrdinatedDimension(LPDISPATCH ordPar);
  long            __fastcall ksAddStyle(short type, LPDISPATCH param, short copy);
  long            __fastcall ksIsStyleInDocument(short type, LPDISPATCH param, short copy);
  long            __fastcall ksDeleteStyleFromDocument(short type, LPDISPATCH param, short copy);
  long            __fastcall ksExistObj(long ref);
  long            __fastcall ksGetObjGabaritRect(long p, LPDISPATCH par);
  long            __fastcall ksSheetToView(double x, double y, double* outX, double* outY);
  long            __fastcall ksViewToSheet(double x, double y, double* outX, double* outY);
  long            __fastcall ksPolyline(long style);
  long            __fastcall ksPolylineByParam(LPDISPATCH par);
  long            __fastcall ksGetReferenceDocumentPart(short t);
  long            __fastcall ksGetViewReference(long number);
  long            __fastcall ksGetViewNumber(long p);
  long            __fastcall ksOpenView(long number);
  long            __fastcall ksNewViewNumber();
  long            __fastcall ksCreateSheetView(LPDISPATCH par, long* number);
  long            __fastcall ksDecomposeObj(long p, short level, double arrow, short type);
  long            __fastcall ksGetViewObjCount(long p);
  long            __fastcall ksLinBreakDimension(LPDISPATCH linPar);
  long            __fastcall ksAngBreakDimension(LPDISPATCH angPar);
  long            __fastcall ksIsCurveClosed(long p);
  long            __fastcall ksBase(LPDISPATCH par);
  long            __fastcall ksRough(LPDISPATCH roughPar);
  BSTR            __fastcall ksGetGroupName(long gr, long* group, long size);
  long            __fastcall ksMtr(double x, double y, double angle, double scaleX, double scaleY);
  long            __fastcall ksDeleteMtr();
  long            __fastcall ksPointIntoMtr(double x, double y, double* xn, double* yn);
  long            __fastcall ksPointFromMtr(double x, double y, double* xn, double* yn);
  long            __fastcall ksLengthIntoMtr(double* len);
  long            __fastcall ksLengthFromMtr(double* len);
  long            __fastcall ksLeader(LPDISPATCH leaderPar);
  long            __fastcall ksPositionLeader(LPDISPATCH posLeaderParam);
  long            __fastcall ksBrandLeader(LPDISPATCH brandLeaderParam);
  long            __fastcall ksMarkerLeader(LPDISPATCH markerLeaderParam);
  long            __fastcall ksCursor(LPDISPATCH info, double* x, double* y, LPDISPATCH phantom);
  long            __fastcall ksPlacement(LPDISPATCH info, double* x, double* y, double* angle, 
                                         LPDISPATCH phantom);
  long            __fastcall ksCommandWindow(LPDISPATCH info);
  long            __fastcall ksChangeObjectInLibRequest(LPDISPATCH info, LPDISPATCH phantom);
  long            __fastcall ksReleaseReference(long p);
  LPDISPATCH      __fastcall GetFragment();
  long            __fastcall ksInitFilePreviewFunc(BSTR funcName, long hInst, LPDISPATCH dispatchOCX);
  long            __fastcall ksTable();
  long            __fastcall ksRebuildTableVirtualGrid();
  long            __fastcall ksGetTableItemsCount(long type);
  long            __fastcall ksGetTableColumnText(long* numb, LPDISPATCH par);
  long            __fastcall ksSetTableColumnText(long numb, LPDISPATCH par);
  long            __fastcall ksClearTableColumnText(long numb);
  long            __fastcall ksCombineTwoTableItems(long index1, long index2);
  long            __fastcall ksDivideTableItem(long index, TOLEBOOL vertical, long style);
  long            __fastcall ksSetTableBorderStyle(long index, short typeBorder, long style);
  long            __fastcall ksGetTableBorderStyle(long index, short typeBorder);
  long            __fastcall ksOpenTable(long table);
  long            __fastcall ksColumnNumber(long numb);
  long            __fastcall ksSetMacroParam(long ref, LPDISPATCH userPars, TOLEBOOL dblClickOff, 
                                             TOLEBOOL hotpoints, TOLEBOOL externEdit);
  long            __fastcall ksGetMacroParam(long ref, LPDISPATCH userPars);
  long            __fastcall ksOpenTechnicalDemand(LPDISPATCH pGab, long style);
  long            __fastcall ksCloseTechnicalDemand();
  long            __fastcall ksSpecRough(LPDISPATCH par);
  long            __fastcall ksViewPointer(LPDISPATCH par);
  long            __fastcall ksCutLine(LPDISPATCH par);
  long            __fastcall ksApproximationCurve(long p, double eps, TOLEBOOL curentLayer, 
                                                  double maxRad, TOLEBOOL smooth);
  long            __fastcall ksTolerance(LPDISPATCH par);
  long            __fastcall ksOpenTolerance(long tolerance);
  long            __fastcall ksGetToleranceColumnText(long* numb, LPDISPATCH par);
  long            __fastcall ksSetToleranceColumnText(long numb, LPDISPATCH par);
  long            __fastcall ksGetPointOnToleranceTable(long tolerance, short entry, 
                                                        LPDISPATCH point);
  TOLEBOOL        __fastcall ksOpenDocument(BSTR nameDoc, TOLEBOOL regim);
  TOLEBOOL        __fastcall ksSaveDocument(BSTR fileName);
  TOLEBOOL        __fastcall ksCloseDocument();
  TOLEBOOL        __fastcall ksCreateDocument(LPDISPATCH par);
  TOLEBOOL        __fastcall ksMovePoint(double* x, double* y, double ang, double len);
  long            __fastcall ksReadTableFromFile(BSTR tblFileName);
  long            __fastcall ksDrawKompasDocument(long HWindow, BSTR docFileName);
  long            __fastcall ksViewGetObjectArea();
  long            __fastcall ksGetMacroPlacement(long macro, double* x, double* y, double* angl);
  long            __fastcall ksSetMacroPlacement(long macro, double x, double y, double angl, 
                                                 long relativ);
  long            __fastcall ksDrawKompasGroup(long HWindow, long gr);
  LPDISPATCH      __fastcall ksGetDocVariableArray(long p);
  long            __fastcall ksSetDocVariableArray(long obj, LPDISPATCH arr, TOLEBOOL setNote);
  long            __fastcall ksGetDocOptions(long optionsType, LPDISPATCH param);
  long            __fastcall ksSetObjConstraint(long obj, LPDISPATCH par);
  LPDISPATCH      __fastcall ksGetObjConstraints(long obj);
  long            __fastcall ksDestroyObjConstraint(long obj, LPDISPATCH par);
  BSTR            __fastcall ksGetZona(double x, double y, long* result_);
  long            __fastcall ksClearRegion(long grClear, long grRegion, TOLEBOOL inside);
  long            __fastcall ksNurbsForConicCurve(LPDISPATCH xArr, LPDISPATCH yArr, short style);
  LPDISPATCH      __fastcall GetStamp();
  double          __fastcall ksGetTextLength(BSTR text, long style);
  double          __fastcall ksGetTextLengthFromReference(long pText);
  long            __fastcall ksZoom(double x1, double y1, double x2, double y2);
  long            __fastcall ksZoomScale(double x, double y, double scale);
  long            __fastcall ksZoomPrevNextOrAll(short type);
  long            __fastcall ksGetZoomScale(double* x, double* y, double* scale);
  long            __fastcall ksSpecificationOnSheet(short onSheet);
  LPDISPATCH      __fastcall GetSpecification();
  long            __fastcall ksReDrawDocPart(LPDISPATCH rect, long view);
  double          __fastcall ksGetCursorLimit();
  long            __fastcall ksGetTextAlign(long pText);
  long            __fastcall ksSetTextAlign(long pText, long align);
  long            __fastcall ksSetTextLineAlign(short align);
  long            __fastcall ksDestroyObjects(long gr);
  TOLEBOOL        __fastcall ksEnableUndo(TOLEBOOL enabl);
  long            __fastcall ksAddPowerForm(double x, double y);
  long            __fastcall ksCreatePowerArc();
  long            __fastcall ksTrimNurbs(long pObj, double tMin, double tMax);
  BSTR            __fastcall ksGetDimensionVariableName(long dimObj);
  long            __fastcall ksTrimmCurve(long curve, double x1, double y1, double x2, double y2, 
                                          double x3, double y3, short deleteOldCurve);
  TOLEBOOL        __fastcall SaveAsToRasterFormat(BSTR fileName, LPDISPATCH rasterPar);
  LPDISPATCH      __fastcall RasterFormatParam();
  double          __fastcall ksGetLeaderShelfLength(long leader, double* x, double* y);
  long            __fastcall ksSetDocOptions(long optionsType, LPDISPATCH param);
  long            __fastcall ksAxisLine(LPDISPATCH param);
  TOLEBOOL        __fastcall SaveAsToUncompressedRasterFormat(BSTR fileName, LPDISPATCH rasterPar);
  long            __fastcall ksCreateSheetArbitraryView(LPDISPATCH par, long* number);
  TOLEBOOL        __fastcall ksCreateSheetStandartViews(LPDISPATCH par, long bitVector, double dx, 
                                                        double dy);
  long            __fastcall ksCreateSheetProjectionView(LPDISPATCH par, long* number, long view);
  long            __fastcall ksCreateSheetArrowView(LPDISPATCH par, long* number, long obj);
  long            __fastcall ksCreateSheetSectionView(LPDISPATCH par, long* number, long obj);
  long            __fastcall ksCreateSheetRemoteView(LPDISPATCH par, long* number, long obj);
  TOLEBOOL        __fastcall ksRebuildDocument();
  long            __fastcall ksRemoteElement(LPDISPATCH par);
  long            __fastcall ksCopyObjEx(LPDISPATCH param);
  Kompas6api5_tlb::Object2DNotifyPtr __fastcall GetObject2DNotify(long objType);
  Kompas6api5_tlb::SelectionMngNotifyPtr __fastcall GetSelectionMngNotify();
  Kompas6api5_tlb::ksObject2DNotifyResultPtr __fastcall GetObject2DNotifyResult();
  Kompas6api5_tlb::Document2DNotifyPtr __fastcall GetDocument2DNotify();
  long            __fastcall ksSetMaterialParam(LPDISPATCH material, double density);
  long            __fastcall ksChangeObjectsOrder(long group, long obj, int type);
  long            __fastcall ksIsSlaveSpcOpened();
  long            __fastcall ksGetMacroWaitDblClickEdit(long ref);
  long            __fastcall ksSetMacroWaitDblClickEdit(long ref, long waitDblClick);
  long            __fastcall ksParametrizeObjects(long obj, LPDISPATCH par);
  long            __fastcall ksCursorEx(LPDISPATCH info, double* x, double* y, LPDISPATCH phantom, 
                                        LPDISPATCH processParam);
  long            __fastcall ksPlacementEx(LPDISPATCH info, double* x, double* y, double* angle, 
                                           LPDISPATCH phantom, LPDISPATCH processParam);
  double          __fastcall ksCalcRasterScale(BSTR fileName, double w, double h);
  long            __fastcall ksTextEx(LPDISPATCH txtParam, long align);
  long            __fastcall ksColouringEx(long color, long group);
  TOLEBOOL        __fastcall ksSaveDocumentEx(BSTR fileName, long SaveMode);
  TVariant        __fastcall ksAssociationViewMatrix3D(long ViewRef);
  TOLEBOOL        __fastcall ksPoint3DToAssociationView(long view, double x3D, double y3D, 
                                                        double z3D, double* x2D, double* y2D);
  long            __fastcall ksGetReferenceDocumentPartEx(short t, long SheetNumb);
  LPDISPATCH      __fastcall GetStampEx(long SheetNumb);
  long            __fastcall ksGetDocumentPagesCount();
  TOLEBOOL        __fastcall ksSaveToDXF(BSTR DXFFileName);
  long            __fastcall ksInitFilePreviewFuncW(BSTR funcName, long hInst, 
                                                    LPDISPATCH dispatchOCX);
  long            __fastcall ksChangeLeader(LPDISPATCH leaderParam);
  TOLEBOOL        __fastcall ksGetShelfPoint(long p, long index, double* x, double* y, 
                                             long paramType);
  long            __fastcall ksMakeEncloseContoursEx(long gr, double x, double y, TOLEBOOL forHatch);
  long            __fastcall ksAnnPolylineEx(LPDISPATCH par, short term1, short term2);
  long            __fastcall ksAnnEllipseArc(LPDISPATCH par, short term1, short term2);
  long            __fastcall ksAnnParEllipseArc(LPDISPATCH par, short term1, short term2);
  long            __fastcall ksAnnCircle(double xc, double yc, double rad, long style);
  long            __fastcall ksAnnEllipse(LPDISPATCH par);
  long            __fastcall ksAnnPolyline(long style, short term1, short term2);
  long            __fastcall ksAnnTextEx(LPDISPATCH txtParam, long align);
  long            __fastcall ksAnnPoint(double x, double y, long style);
  TOLEBOOL        __fastcall ksGetAnnObjTerminators(long annObj, short* term1, short* term2);
  long            __fastcall ksGetObjectStyle(long obj);
  TOLEBOOL        __fastcall ksSetObjectStyle(long obj, long style);
  long            __fastcall ksGetMacroPlacementEx(long macro, double* x, double* y, double* angl, 
                                                   long sheetParam, long* mirrorSymmetry);
  long            __fastcall ksSetMacroPlacementEx(long macro, double x, double y, double angl, 
                                                   long relativ, long mirrorSymmetry);
  TOLEBOOL        __fastcall ksUndoContainer(TOLEBOOL Add);

  __property   long            reference = {read = get_reference, write = set_reference};
  __property   TOLEBOOL        orthoMode = {read = get_orthoMode, write = set_orthoMode};
};
typedef ksDocument2DDispT<ksDocument2D> ksDocument2DDisp;

// *********************************************************************//
// DispIntf:  ksObject2DNotify
// Flags:     (4096) Dispatchable
// GUID:      {2E29C343-C521-4B0F-B37D-587D0347B7BA}
// *********************************************************************//
template <class T>
class ksObject2DNotifyDispT : public TAutoDriver<ksObject2DNotify>
{
public:
  ksObject2DNotifyDispT(){}

  void Attach(LPUNKNOWN punk)
  { m_Dispatch = static_cast<T*>(punk); }

  TOLEBOOL        __fastcall ChangeActive(long objRef);
  TOLEBOOL        __fastcall BeginDelete(long objRef);
  TOLEBOOL        __fastcall Delete(long objRef);
  TOLEBOOL        __fastcall BeginMove(long objRef);
  TOLEBOOL        __fastcall Move(long objRef);
  TOLEBOOL        __fastcall BeginRotate(long objRef);
  TOLEBOOL        __fastcall Rotate(long objRef);
  TOLEBOOL        __fastcall BeginScale(long objRef);
  TOLEBOOL        __fastcall scale(long objRef);
  TOLEBOOL        __fastcall BeginTransform(long objRef);
  TOLEBOOL        __fastcall Transform(long objRef);
  TOLEBOOL        __fastcall BeginCopy(long objRef);
  TOLEBOOL        __fastcall copy(long objRef);
  TOLEBOOL        __fastcall BeginSymmetry(long objRef);
  TOLEBOOL        __fastcall Symmetry(long objRef);
  TOLEBOOL        __fastcall BeginProcess(long pType, long objRef);
  TOLEBOOL        __fastcall EndProcess(long pType);
  TOLEBOOL        __fastcall CreateObject(long objRef);
  TOLEBOOL        __fastcall UpdateObject(long objRef);
  TOLEBOOL        __fastcall BeginDestroyObject(long objRef);
  TOLEBOOL        __fastcall DestroyObject(long objRef);

};
typedef ksObject2DNotifyDispT<ksObject2DNotify> ksObject2DNotifyDisp;

// *********************************************************************//
// DispIntf:  ksSelectionMngNotify
// Flags:     (4096) Dispatchable
// GUID:      {A421368A-34B6-4DDF-9A52-73B3488EE83F}
// *********************************************************************//
template <class T>
class ksSelectionMngNotifyDispT : public TAutoDriver<ksSelectionMngNotify>
{
public:
  ksSelectionMngNotifyDispT(){}

  void Attach(LPUNKNOWN punk)
  { m_Dispatch = static_cast<T*>(punk); }

  TOLEBOOL        __fastcall Select(TVariant obj);
  TOLEBOOL        __fastcall Unselect(TVariant obj);
  TOLEBOOL        __fastcall UnselectAll();

};
typedef ksSelectionMngNotifyDispT<ksSelectionMngNotify> ksSelectionMngNotifyDisp;

// *********************************************************************//
// DispIntf:  ksObject2DNotifyResult
// Flags:     (4096) Dispatchable
// GUID:      {1FE1EB28-CD28-4700-8E46-25CCFE9C0EC8}
// *********************************************************************//
template<class T>
class ksObject2DNotifyResultDispT : public TAutoDriver<ksObject2DNotifyResult>
{
public:
  ksObject2DNotifyResultDispT(){}

  ksObject2DNotifyResultDispT(ksObject2DNotifyResult *pintf)
  {
    TAutoDriver<ksObject2DNotifyResult>::Bind(pintf, false);
  }

  ksObject2DNotifyResultDispT(ksObject2DNotifyResultPtr pintf)
  {
    TAutoDriver<ksObject2DNotifyResult>::Bind(pintf, true);
  }

  ksObject2DNotifyResultDispT& operator=(ksObject2DNotifyResult *pintf)
  {
    TAutoDriver<ksObject2DNotifyResult>::Bind(pintf, false);
    return *this;
  }

  ksObject2DNotifyResultDispT& operator=(ksObject2DNotifyResultPtr pintf)
  {
    TAutoDriver<ksObject2DNotifyResult>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Object2DNotifyResult));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Object2DNotifyResult);
  }

  long            __fastcall GetNotifyType();
  TOLEBOOL        __fastcall IsCopy();
  TOLEBOOL        __fastcall GetSheetPoint(TOLEBOOL from, double* x, double* y);
  long            __fastcall GetCopyObject();
  double          __fastcall GetAngle();
  TOLEBOOL        __fastcall GetScale(double* sx, double* sy);
  long            __fastcall GetProcessType();
  TOLEBOOL        __fastcall IsUndoMode();
  TOLEBOOL        __fastcall IsRedoMode();

};
typedef ksObject2DNotifyResultDispT<ksObject2DNotifyResult> ksObject2DNotifyResultDisp;

// *********************************************************************//
// DispIntf:  ksDocument2DNotify
// Flags:     (4096) Dispatchable
// GUID:      {13F0BE95-3361-4AD9-90AF-D935EA64A127}
// *********************************************************************//
template <class T>
class ksDocument2DNotifyDispT : public TAutoDriver<ksDocument2DNotify>
{
public:
  ksDocument2DNotifyDispT(){}

  void Attach(LPUNKNOWN punk)
  { m_Dispatch = static_cast<T*>(punk); }

  TOLEBOOL        __fastcall BeginRebuild();
  TOLEBOOL        __fastcall Rebuild();
  TOLEBOOL        __fastcall BeginChoiceMaterial();
  TOLEBOOL        __fastcall ChoiceMaterial(BSTR material, double density);
  TOLEBOOL        __fastcall BeginInsertFragment();
  TOLEBOOL        __fastcall LocalFragmentEdit(LPDISPATCH newDoc, TOLEBOOL newFrw);

};
typedef ksDocument2DNotifyDispT<ksDocument2DNotify> ksDocument2DNotifyDisp;

// *********************************************************************//
// DispIntf:  ksDocument3D
// Flags:     (4096) Dispatchable
// GUID:      {111CEFE1-A0A7-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksDocument3DDispT : public TAutoDriver<ksDocument3D>
{
public:
  ksDocument3DDispT(){}

  ksDocument3DDispT(ksDocument3D *pintf)
  {
    TAutoDriver<ksDocument3D>::Bind(pintf, false);
  }

  ksDocument3DDispT(ksDocument3DPtr pintf)
  {
    TAutoDriver<ksDocument3D>::Bind(pintf, true);
  }

  ksDocument3DDispT& operator=(ksDocument3D *pintf)
  {
    TAutoDriver<ksDocument3D>::Bind(pintf, false);
    return *this;
  }

  ksDocument3DDispT& operator=(ksDocument3DPtr pintf)
  {
    TAutoDriver<ksDocument3D>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Document3D));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Document3D);
  }

  void            __fastcall set_fileName(BSTR Value);
  BSTR            __fastcall get_fileName();
  void            __fastcall set_comment(BSTR Value);
  BSTR            __fastcall get_comment();
  void            __fastcall set_author(BSTR Value);
  BSTR            __fastcall get_author();
  void            __fastcall set_reference(long Value);
  long            __fastcall get_reference();
  void            __fastcall set_perspective(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_perspective();
  void            __fastcall set_drawMode(int Value);
  int             __fastcall get_drawMode();
  void            __fastcall set_hideAllPlanes(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_hideAllPlanes();
  void            __fastcall set_hideAllAxis(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_hideAllAxis();
  void            __fastcall set_hideAllSketches(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_hideAllSketches();
  void            __fastcall set_hideAllPlaces(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_hideAllPlaces();
  void            __fastcall set_hideAllSurfaces(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_hideAllSurfaces();
  void            __fastcall set_hideAllThreads(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_hideAllThreads();
  void            __fastcall set_shadedWireframe(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_shadedWireframe();
  void            __fastcall set_dismantleMode(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_dismantleMode();
  void            __fastcall set_treeNeedRebuild(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_treeNeedRebuild();
  void            __fastcall set_enableRollBackFeaturesInCollections(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_enableRollBackFeaturesInCollections();
  void            __fastcall set_hideAllCurves(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_hideAllCurves();
  void            __fastcall set_hideAllControlPoints(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_hideAllControlPoints();
  void            __fastcall set_hideAllDimensions(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_hideAllDimensions();
  void            __fastcall set_hideAllDesignations(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_hideAllDesignations();
  void            __fastcall set_hideAllAuxiliaryGeom(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_hideAllAuxiliaryGeom();
  void            __fastcall set_hideInComponentsMode(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_hideInComponentsMode();
  void            __fastcall set_windowNeedRebuild(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_windowNeedRebuild();
  TOLEBOOL        __fastcall get_invisibleMode();
  TOLEBOOL        __fastcall Create(TOLEBOOL invisible/*[def,opt]*/, TOLEBOOL typeDoc/*[def,opt]*/);
  TOLEBOOL        __fastcall IsDetail();
  LPDISPATCH      __fastcall GetPart(long type);
  LPDISPATCH      __fastcall MateConstraintCollection();
  TOLEBOOL        __fastcall UpdateDocumentParam();
  TOLEBOOL        __fastcall IsEditMode();
  TOLEBOOL        __fastcall ChangeObjectInLibRequest();
  TOLEBOOL        __fastcall StopLibRequest();
  LPDISPATCH      __fastcall GetSpecification();
  LPDISPATCH      __fastcall GetRequestInfo(LPDISPATCH part);
  TOLEBOOL        __fastcall UserGetPlacementAndEntity(long entityCount);
  TOLEBOOL        __fastcall SetActive();
  TOLEBOOL        __fastcall IsActive();
  TOLEBOOL        __fastcall Open(BSTR fileName, TOLEBOOL invisible/*[def,opt]*/);
  TOLEBOOL        __fastcall Save();
  TOLEBOOL        __fastcall SaveAs(BSTR fileName);
  TOLEBOOL        __fastcall close();
  TOLEBOOL        __fastcall UserGetCursor(BSTR prompt, double* x, double* y, double* z);
  TOLEBOOL        __fastcall SetPartFromFile(BSTR fileName, LPDISPATCH part, 
                                             TOLEBOOL externalFile/*[def,opt]*/);
  LPDISPATCH      __fastcall EntityCollection(short objType/*[def,opt]*/, 
                                              TOLEBOOL checkEntity/*[def,opt]*/);
  LPDISPATCH      __fastcall UserSelectEntity(LPDISPATCH filterObject, BSTR methodName, BSTR prompt
                                              , long hInst/*[def,opt]*/, LPDISPATCH val/*[def,opt]*/);
  TOLEBOOL        __fastcall RemoveMateConstraint(long constraintType, LPDISPATCH obj1, 
                                                  LPDISPATCH obj2);
  TOLEBOOL        __fastcall AddMateConstraint(long constraintType, LPDISPATCH obj1, LPDISPATCH obj2
                                               , short direction/*[def,opt]*/, 
                                               short fixed/*[def,opt]*/, double val/*[def,opt]*/);
  long            __fastcall ksDeleteObj(long ref);
  LPDISPATCH      __fastcall PartCollection(TOLEBOOL refresh);
  TOLEBOOL        __fastcall CreatePartFromFile(BSTR fileName, LPDISPATCH part, LPDISPATCH plane);
  LPDISPATCH      __fastcall CreatePartInAssembly(BSTR fileName, LPDISPATCH plane);
  TOLEBOOL        __fastcall RebuildDocument();
  TOLEBOOL        __fastcall ZoomPrevNextOrAll(short type);
  LPDISPATCH      __fastcall GetMateConstraint();
  TOLEBOOL        __fastcall SaveAsToRasterFormat(BSTR fileName, LPDISPATCH rasterPar);
  LPDISPATCH      __fastcall RasterFormatParam();
  TOLEBOOL        __fastcall SaveAsToAdditionFormat(BSTR fileName, LPDISPATCH additionPar);
  LPDISPATCH      __fastcall AdditionFormatParam();
  LPDISPATCH      __fastcall GetViewProjectionCollection();
  TOLEBOOL        __fastcall DeleteObject(LPDISPATCH obj);
  LPDISPATCH      __fastcall GetSelectionMng();
  LPDISPATCH      __fastcall GetChooseMng();
  long            __fastcall GetObjectType(LPDISPATCH obj);
  long            __fastcall ksGetObjParam(long ref, LPDISPATCH param, long parType/*[def,opt]*/);
  long            __fastcall ksSetObjParam(long referObj, LPDISPATCH param, 
                                           long parType/*[def,opt]*/);
  TOLEBOOL        __fastcall SaveAsToUncompressedRasterFormat(BSTR fileName, LPDISPATCH rasterPar);
  LPDISPATCH      __fastcall AddImportedSurfaces(BSTR fileName, TOLEBOOL together);
  Kompas6api5_tlb::Document3DNotifyPtr __fastcall GetDocument3DNotify();
  Kompas6api5_tlb::ksAttribute3DCollectionPtr __fastcall AttributeCollection(long key1, long key2, 
                                                                             long key3, long key4, 
                                                                             double numb, 
                                                                             LPDISPATCH pObj);
  Kompas6api5_tlb::ksFeatureCollectionPtr __fastcall FeatureCollection(long key1, long key2, 
                                                                       long key3, long key4, 
                                                                       double numb, int objType);
  TOLEBOOL        __fastcall SetPartFromFileEx(BSTR fileName, LPDISPATCH part, 
                                               TOLEBOOL externalFile/*[def,opt]*/, 
                                               TOLEBOOL redraw/*[def,opt]*/);
  Kompas6api5_tlb::ksComponentPositionerPtr __fastcall ComponentPositioner();
  Kompas6api5_tlb::ksPlacementPtr __fastcall DefaultPlacement();
  long            __fastcall ksIsSlaveSpcOpened();
  LPDISPATCH      __fastcall GetEditMacroObject();
  TOLEBOOL        __fastcall SaveAsEx(BSTR fileName, long SaveMode);
  LPDISPATCH      __fastcall GetInterface(long o3dType);
  LPDISPATCH      __fastcall CopyPart(LPDISPATCH sourcePart, LPDISPATCH newPlacement);
  LPDISPATCH      __fastcall UserSelectEntityEx(LPDISPATCH filterObject, BSTR methodName, 
                                                BSTR prompt, long hInst/*[def,opt]*/, 
                                                LPDISPATCH val/*[def,opt]*/, LPUNKNOWN processParam);
  TOLEBOOL        __fastcall PlaceFeatureAfter(LPDISPATCH obj, LPDISPATCH afterObj);
  TOLEBOOL        __fastcall SetRollBackFeature(LPDISPATCH obj);
  LPDISPATCH      __fastcall GetRollBackFeature();
  TOLEBOOL        __fastcall ExcludeFeaturesAfter(LPDISPATCH obj, TOLEBOOL exclude);
  LPDISPATCH      __fastcall GetDocument3DNotifyResult();

  __property   BSTR            fileName = {read = get_fileName, write = set_fileName};
  __property   BSTR            comment = {read = get_comment, write = set_comment};
  __property   BSTR            author = {read = get_author, write = set_author};
  __property   long            reference = {read = get_reference, write = set_reference};
  __property   TOLEBOOL        perspective = {read = get_perspective, write = set_perspective};
  __property   int             drawMode = {read = get_drawMode, write = set_drawMode};
  __property   TOLEBOOL        hideAllPlanes = {read = get_hideAllPlanes, write = set_hideAllPlanes};
  __property   TOLEBOOL        hideAllAxis = {read = get_hideAllAxis, write = set_hideAllAxis};
  __property   TOLEBOOL        hideAllSketches = {read = get_hideAllSketches, write = set_hideAllSketches};
  __property   TOLEBOOL        hideAllPlaces = {read = get_hideAllPlaces, write = set_hideAllPlaces};
  __property   TOLEBOOL        hideAllSurfaces = {read = get_hideAllSurfaces, write = set_hideAllSurfaces};
  __property   TOLEBOOL        hideAllThreads = {read = get_hideAllThreads, write = set_hideAllThreads};
  __property   TOLEBOOL        shadedWireframe = {read = get_shadedWireframe, write = set_shadedWireframe};
  __property   TOLEBOOL        dismantleMode = {read = get_dismantleMode, write = set_dismantleMode};
  __property   TOLEBOOL        treeNeedRebuild = {read = get_treeNeedRebuild, write = set_treeNeedRebuild};
  __property   TOLEBOOL        enableRollBackFeaturesInCollections = {read = get_enableRollBackFeaturesInCollections, write = set_enableRollBackFeaturesInCollections};
  __property   TOLEBOOL        hideAllCurves = {read = get_hideAllCurves, write = set_hideAllCurves};
  __property   TOLEBOOL        hideAllControlPoints = {read = get_hideAllControlPoints, write = set_hideAllControlPoints};
  __property   TOLEBOOL        hideAllDimensions = {read = get_hideAllDimensions, write = set_hideAllDimensions};
  __property   TOLEBOOL        hideAllDesignations = {read = get_hideAllDesignations, write = set_hideAllDesignations};
  __property   TOLEBOOL        hideAllAuxiliaryGeom = {read = get_hideAllAuxiliaryGeom, write = set_hideAllAuxiliaryGeom};
  __property   TOLEBOOL        hideInComponentsMode = {read = get_hideInComponentsMode, write = set_hideInComponentsMode};
  __property   TOLEBOOL        windowNeedRebuild = {read = get_windowNeedRebuild, write = set_windowNeedRebuild};
  __property   TOLEBOOL        invisibleMode = {read = get_invisibleMode};
};
typedef ksDocument3DDispT<ksDocument3D> ksDocument3DDisp;

// *********************************************************************//
// DispIntf:  ksDocument3DNotify
// Flags:     (4096) Dispatchable
// GUID:      {B6C1BCFD-68DA-4A0A-A95C-296084C6A01A}
// *********************************************************************//
template <class T>
class ksDocument3DNotifyDispT : public TAutoDriver<ksDocument3DNotify>
{
public:
  ksDocument3DNotifyDispT(){}

  void Attach(LPUNKNOWN punk)
  { m_Dispatch = static_cast<T*>(punk); }

  TOLEBOOL        __fastcall BeginRebuild();
  TOLEBOOL        __fastcall Rebuild();
  TOLEBOOL        __fastcall BeginChoiceMaterial();
  TOLEBOOL        __fastcall ChoiceMaterial(BSTR material, double density);
  TOLEBOOL        __fastcall BeginChoiceMarking();
  TOLEBOOL        __fastcall ChoiceMarking(BSTR marking);
  TOLEBOOL        __fastcall BeginSetPartFromFile();
  TOLEBOOL        __fastcall BeginCreatePartFromFile(TOLEBOOL typeDoc, 
                                                     Kompas6api5_tlb::ksEntityPtr plane);

};
typedef ksDocument3DNotifyDispT<ksDocument3DNotify> ksDocument3DNotifyDisp;

// *********************************************************************//
// DispIntf:  ksEntity
// Flags:     (4096) Dispatchable
// GUID:      {508A0CCA-9D74-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksEntityDispT : public TAutoDriver<ksEntity>
{
public:
  ksEntityDispT(){}

  ksEntityDispT(ksEntity *pintf)
  {
    TAutoDriver<ksEntity>::Bind(pintf, false);
  }

  ksEntityDispT(ksEntityPtr pintf)
  {
    TAutoDriver<ksEntity>::Bind(pintf, true);
  }

  ksEntityDispT& operator=(ksEntity *pintf)
  {
    TAutoDriver<ksEntity>::Bind(pintf, false);
    return *this;
  }

  ksEntityDispT& operator=(ksEntityPtr pintf)
  {
    TAutoDriver<ksEntity>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_entity));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_entity);
  }

  void            __fastcall set_hidden(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_hidden();
  void            __fastcall set_name(BSTR Value);
  BSTR            __fastcall get_name();
  void            __fastcall set_excluded(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_excluded();
  short           __fastcall get_type();
  LPDISPATCH      __fastcall GetDefinition();
  LPDISPATCH      __fastcall GetParent();
  TOLEBOOL        __fastcall IsCreated();
  TOLEBOOL        __fastcall IsIt(long objType);
  TOLEBOOL        __fastcall Create();
  TOLEBOOL        __fastcall _Update();
  LPDISPATCH      __fastcall ColorParam();
  TOLEBOOL        __fastcall GetAdvancedColor(long* color, double* ambient, double* diffuse, 
                                              double* specularity, double* shininess, 
                                              double* transparency, double* emission);
  TOLEBOOL        __fastcall SetAdvancedColor(long color, double ambient/*[def,opt]*/, 
                                              double diffuse/*[def,opt]*/, 
                                              double specularity/*[def,opt]*/, 
                                              double shininess/*[def,opt]*/, 
                                              double transparency/*[def,opt]*/, 
                                              double emission/*[def,opt]*/);
  LPDISPATCH      __fastcall GetFeature();
  LPDISPATCH      __fastcall BodyCollection();
  TOLEBOOL        __fastcall get_MultiBodyParts();
  LPDISPATCH      __fastcall GetBodyParts();

  __property   TOLEBOOL        hidden = {read = get_hidden, write = set_hidden};
  __property   BSTR            name = {read = get_name, write = set_name};
  __property   TOLEBOOL        excluded = {read = get_excluded, write = set_excluded};
  __property   short           type = {read = get_type};
  __property   TOLEBOOL        MultiBodyParts = {read = get_MultiBodyParts};
};
typedef ksEntityDispT<ksEntity> ksEntityDisp;

// *********************************************************************//
// DispIntf:  ksAttribute3DCollection
// Flags:     (4096) Dispatchable
// GUID:      {EB61A981-F63E-47E1-BEE8-2D1612C78E78}
// *********************************************************************//
template<class T>
class ksAttribute3DCollectionDispT : public TAutoDriver<ksAttribute3DCollection>
{
public:
  ksAttribute3DCollectionDispT(){}

  ksAttribute3DCollectionDispT(ksAttribute3DCollection *pintf)
  {
    TAutoDriver<ksAttribute3DCollection>::Bind(pintf, false);
  }

  ksAttribute3DCollectionDispT(ksAttribute3DCollectionPtr pintf)
  {
    TAutoDriver<ksAttribute3DCollection>::Bind(pintf, true);
  }

  ksAttribute3DCollectionDispT& operator=(ksAttribute3DCollection *pintf)
  {
    TAutoDriver<ksAttribute3DCollection>::Bind(pintf, false);
    return *this;
  }

  ksAttribute3DCollectionDispT& operator=(ksAttribute3DCollectionPtr pintf)
  {
    TAutoDriver<ksAttribute3DCollection>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Attribute3DCollection));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Attribute3DCollection);
  }

  TOLEBOOL        __fastcall refresh();
  long            __fastcall GetCount();
  Kompas6api5_tlb::ksAttribute3DPtr __fastcall First();
  Kompas6api5_tlb::ksAttribute3DPtr __fastcall Last();
  Kompas6api5_tlb::ksAttribute3DPtr __fastcall Next();
  Kompas6api5_tlb::ksAttribute3DPtr __fastcall Prev();
  Kompas6api5_tlb::ksAttribute3DPtr __fastcall GetByIndex(long index);
  long            __fastcall FindIt(Kompas6api5_tlb::ksAttribute3DPtr obj);
  TOLEBOOL        __fastcall Select(long key1, long key2, long key3, long key4, double numb, 
                                    long objType);

};
typedef ksAttribute3DCollectionDispT<ksAttribute3DCollection> ksAttribute3DCollectionDisp;

// *********************************************************************//
// DispIntf:  ksAttribute3D
// Flags:     (4096) Dispatchable
// GUID:      {3EEB2B43-56FF-49C0-AFCF-69E990A7D84C}
// *********************************************************************//
template<class T>
class ksAttribute3DDispT : public TAutoDriver<ksAttribute3D>
{
public:
  ksAttribute3DDispT(){}

  ksAttribute3DDispT(ksAttribute3D *pintf)
  {
    TAutoDriver<ksAttribute3D>::Bind(pintf, false);
  }

  ksAttribute3DDispT(ksAttribute3DPtr pintf)
  {
    TAutoDriver<ksAttribute3D>::Bind(pintf, true);
  }

  ksAttribute3DDispT& operator=(ksAttribute3D *pintf)
  {
    TAutoDriver<ksAttribute3D>::Bind(pintf, false);
    return *this;
  }

  ksAttribute3DDispT& operator=(ksAttribute3DPtr pintf)
  {
    TAutoDriver<ksAttribute3D>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Attribute3D));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Attribute3D);
  }

  long            __fastcall get_reference();
  Kompas6api5_tlb::ksFeatureCollectionPtr __fastcall FeatureCollection(long objType);
  BSTR            __fastcall get_nameType();

  __property   long            reference = {read = get_reference};
  __property   BSTR            nameType = {read = get_nameType};
};
typedef ksAttribute3DDispT<ksAttribute3D> ksAttribute3DDisp;

// *********************************************************************//
// DispIntf:  ksFeatureCollection
// Flags:     (4096) Dispatchable
// GUID:      {CE6A46FF-02B4-4C7E-AF50-3F3707C8B122}
// *********************************************************************//
template<class T>
class ksFeatureCollectionDispT : public TAutoDriver<ksFeatureCollection>
{
public:
  ksFeatureCollectionDispT(){}

  ksFeatureCollectionDispT(ksFeatureCollection *pintf)
  {
    TAutoDriver<ksFeatureCollection>::Bind(pintf, false);
  }

  ksFeatureCollectionDispT(ksFeatureCollectionPtr pintf)
  {
    TAutoDriver<ksFeatureCollection>::Bind(pintf, true);
  }

  ksFeatureCollectionDispT& operator=(ksFeatureCollection *pintf)
  {
    TAutoDriver<ksFeatureCollection>::Bind(pintf, false);
    return *this;
  }

  ksFeatureCollectionDispT& operator=(ksFeatureCollectionPtr pintf)
  {
    TAutoDriver<ksFeatureCollection>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_FeatureCollection));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_FeatureCollection);
  }

  TOLEBOOL        __fastcall refresh();
  long            __fastcall GetCount();
  Kompas6api5_tlb::ksFeaturePtr __fastcall First();
  Kompas6api5_tlb::ksFeaturePtr __fastcall Last();
  Kompas6api5_tlb::ksFeaturePtr __fastcall Next();
  Kompas6api5_tlb::ksFeaturePtr __fastcall Prev();
  Kompas6api5_tlb::ksFeaturePtr __fastcall GetByIndex(long index);
  Kompas6api5_tlb::ksFeaturePtr __fastcall GetByName(BSTR name, TOLEBOOL testFullName/*[def,opt]*/, 
                                                     TOLEBOOL testIgnoreCase/*[def,opt]*/);
  long            __fastcall FindIt(Kompas6api5_tlb::ksFeaturePtr entity);
  TOLEBOOL        __fastcall Add(Kompas6api5_tlb::ksFeaturePtr obj);
  TOLEBOOL        __fastcall AddAt(Kompas6api5_tlb::ksFeaturePtr obj, long index);
  TOLEBOOL        __fastcall AddBefore(Kompas6api5_tlb::ksFeaturePtr obj, 
                                       Kompas6api5_tlb::ksFeaturePtr base);
  TOLEBOOL        __fastcall DetachByIndex(long index);
  TOLEBOOL        __fastcall DetachByBody(Kompas6api5_tlb::ksFeaturePtr obj);
  TOLEBOOL        __fastcall Clear();
  TOLEBOOL        __fastcall SetByIndex(Kompas6api5_tlb::ksFeaturePtr obj, long index);
  Kompas6api5_tlb::ksAttribute3DCollectionPtr __fastcall AttributeCollection(long key1, long key2, 
                                                                             long key3, long key4, 
                                                                             double numb);

};
typedef ksFeatureCollectionDispT<ksFeatureCollection> ksFeatureCollectionDisp;

// *********************************************************************//
// DispIntf:  ksFeature
// Flags:     (4096) Dispatchable
// GUID:      {088BF9A8-37D3-4B15-A7CA-8C52FF1DBC41}
// *********************************************************************//
template<class T>
class ksFeatureDispT : public TAutoDriver<ksFeature>
{
public:
  ksFeatureDispT(){}

  ksFeatureDispT(ksFeature *pintf)
  {
    TAutoDriver<ksFeature>::Bind(pintf, false);
  }

  ksFeatureDispT(ksFeaturePtr pintf)
  {
    TAutoDriver<ksFeature>::Bind(pintf, true);
  }

  ksFeatureDispT& operator=(ksFeature *pintf)
  {
    TAutoDriver<ksFeature>::Bind(pintf, false);
    return *this;
  }

  ksFeatureDispT& operator=(ksFeaturePtr pintf)
  {
    TAutoDriver<ksFeature>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Feature));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Feature);
  }

  void            __fastcall set_excluded(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_excluded();
  BSTR            __fastcall get_name();
  unsigned_long   __fastcall get_updateStamp();
  TOLEBOOL        __fastcall IsModified(TOLEBOOL recursive);
  LPDISPATCH      __fastcall SubFeatureCollection(TOLEBOOL through, TOLEBOOL libObject);
  LPDISPATCH      __fastcall GetOwnerFeature();
  TOLEBOOL        __fastcall IsValid();
  short           __fastcall get_type();
  LPDISPATCH      __fastcall GetObject();
  Kompas6api5_tlb::ksAttribute3DCollectionPtr __fastcall AttributeCollection(long key1, long key2, 
                                                                             long key3, long key4, 
                                                                             double numb);
  Kompas6api5_tlb::ksEntityCollectionPtr __fastcall EntityCollection(short objType);
  LPDISPATCH      __fastcall get_VariableCollection();
  LPDISPATCH      __fastcall BodyCollection();
  Kompas6api5_tlb::ksAttribute3DCollectionPtr __fastcall GetAttributeCollectionInSource(long key1, 
                                                                                        long key2, 
                                                                                        long key3, 
                                                                                        long key4, 
                                                                                        double numb
                                                                                        , 
                                                                                        Kompas6api5_tlb::ksPartPtr sourcePart);
  TOLEBOOL        __fastcall IsRollBacked();
  LPDISPATCH      __fastcall VariableCollectionEx(TOLEBOOL sourse);
  long            __fastcall get_objectError();

  __property   TOLEBOOL        excluded = {read = get_excluded, write = set_excluded};
  __property   BSTR            name = {read = get_name};
  __property   unsigned_long   updateStamp = {read = get_updateStamp};
  __property   short           type = {read = get_type};
  __property   LPDISPATCH      VariableCollection = {read = get_VariableCollection};
  __property   long            objectError = {read = get_objectError};
};
typedef ksFeatureDispT<ksFeature> ksFeatureDisp;

// *********************************************************************//
// DispIntf:  ksEntityCollection
// Flags:     (4096) Dispatchable
// GUID:      {B0170141-C02C-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksEntityCollectionDispT : public TAutoDriver<ksEntityCollection>
{
public:
  ksEntityCollectionDispT(){}

  ksEntityCollectionDispT(ksEntityCollection *pintf)
  {
    TAutoDriver<ksEntityCollection>::Bind(pintf, false);
  }

  ksEntityCollectionDispT(ksEntityCollectionPtr pintf)
  {
    TAutoDriver<ksEntityCollection>::Bind(pintf, true);
  }

  ksEntityCollectionDispT& operator=(ksEntityCollection *pintf)
  {
    TAutoDriver<ksEntityCollection>::Bind(pintf, false);
    return *this;
  }

  ksEntityCollectionDispT& operator=(ksEntityCollectionPtr pintf)
  {
    TAutoDriver<ksEntityCollection>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_EntityCollection));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_EntityCollection);
  }

  TOLEBOOL        __fastcall refresh();
  long            __fastcall GetCount();
  LPDISPATCH      __fastcall First();
  LPDISPATCH      __fastcall Last();
  LPDISPATCH      __fastcall Next();
  LPDISPATCH      __fastcall Prev();
  LPDISPATCH      __fastcall GetByIndex(long index);
  TOLEBOOL        __fastcall SelectByPoint(double x, double y, double z);
  LPDISPATCH      __fastcall GetByName(BSTR name, TOLEBOOL testFullName/*[def,opt]*/, 
                                       TOLEBOOL testIgnoreCase/*[def,opt]*/);
  TOLEBOOL        __fastcall Add(LPDISPATCH entity);
  TOLEBOOL        __fastcall AddAt(LPDISPATCH entity, long index);
  TOLEBOOL        __fastcall AddBefore(LPDISPATCH entity, LPDISPATCH base);
  TOLEBOOL        __fastcall DetachByIndex(long index);
  TOLEBOOL        __fastcall DetachByBody(LPDISPATCH entity);
  TOLEBOOL        __fastcall Clear();
  TOLEBOOL        __fastcall SetByIndex(LPDISPATCH entity, long index);
  long            __fastcall FindIt(LPDISPATCH entity);

};
typedef ksEntityCollectionDispT<ksEntityCollection> ksEntityCollectionDisp;

// *********************************************************************//
// DispIntf:  ksPart
// Flags:     (4096) Dispatchable
// GUID:      {508A0CCD-9D74-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksPartDispT : public TAutoDriver<ksPart>
{
public:
  ksPartDispT(){}

  ksPartDispT(ksPart *pintf)
  {
    TAutoDriver<ksPart>::Bind(pintf, false);
  }

  ksPartDispT(ksPartPtr pintf)
  {
    TAutoDriver<ksPart>::Bind(pintf, true);
  }

  ksPartDispT& operator=(ksPart *pintf)
  {
    TAutoDriver<ksPart>::Bind(pintf, false);
    return *this;
  }

  ksPartDispT& operator=(ksPartPtr pintf)
  {
    TAutoDriver<ksPart>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_part));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_part);
  }

  void            __fastcall set_name(BSTR Value);
  BSTR            __fastcall get_name();
  void            __fastcall set_marking(BSTR Value);
  BSTR            __fastcall get_marking();
  void            __fastcall set_fixedComponent(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_fixedComponent();
  void            __fastcall set_standardComponent(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_standardComponent();
  void            __fastcall set_fileName(BSTR Value);
  BSTR            __fastcall get_fileName();
  void            __fastcall set_excluded(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_excluded();
  void            __fastcall set_useColor(long Value);
  long            __fastcall get_useColor();
  void            __fastcall set_needRebuild(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_needRebuild();
  void            __fastcall set_hidden(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_hidden();
  void            __fastcall set_DoubleClickEditOff(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_DoubleClickEditOff();
  BSTR            __fastcall get_material();
  TOLEBOOL        __fastcall SetPlacement(LPDISPATCH placement);
  LPDISPATCH      __fastcall GetPlacement();
  LPDISPATCH      __fastcall ColorParam();
  LPDISPATCH      __fastcall VariableCollection();
  TOLEBOOL        __fastcall _Update();
  long            __fastcall GetUserParamSize();
  TOLEBOOL        __fastcall UpdatePlacement();
  TOLEBOOL        __fastcall RebuildModel();
  LPDISPATCH      __fastcall GetDefaultEntity(short objType);
  LPDISPATCH      __fastcall NewEntity(short objType);
  LPDISPATCH      __fastcall EntityCollection(short objType);
  TOLEBOOL        __fastcall GetAdvancedColor(long* color, double* ambient, double* diffuse, 
                                              double* specularity, double* shininess, 
                                              double* transparency, double* emission);
  TOLEBOOL        __fastcall SetAdvancedColor(long color, double ambient/*[def,opt]*/, 
                                              double diffuse/*[def,opt]*/, 
                                              double specularity/*[def,opt]*/, 
                                              double shininess/*[def,opt]*/, 
                                              double transparency/*[def,opt]*/, 
                                              double emission/*[def,opt]*/);
  TOLEBOOL        __fastcall SetUserParam(LPDISPATCH userPars);
  TOLEBOOL        __fastcall IsDetail();
  LPDISPATCH      __fastcall BeginEdit();
  TOLEBOOL        __fastcall EndEdit(TOLEBOOL Rebuild);
  LPDISPATCH      __fastcall GetPart(short type);
  double          __fastcall GetMass();
  TOLEBOOL        __fastcall PutStorage(BSTR fileName, long type, TOLEBOOL mirror);
  TOLEBOOL        __fastcall SetMateConstraintObjects(LPDISPATCH collection);
  LPDISPATCH      __fastcall GetMateConstraintObjects();
  TOLEBOOL        __fastcall GetUserParam(LPDISPATCH userPars);
  double          __fastcall get_density();
  TOLEBOOL        __fastcall SetMaterial(BSTR material, double density);
  LPDISPATCH      __fastcall BodyCollection();
  LPDISPATCH      __fastcall GetFeature();
  LPDISPATCH      __fastcall CalcMassInertiaProperties(unsigned_long bitVector);
  LPDISPATCH      __fastcall GetMeasurer();
  LPDISPATCH      __fastcall GetMainBody();
  Kompas6api5_tlb::Object3DNotifyPtr __fastcall GetObject3DNotify(long objType, LPDISPATCH obj);
  Kompas6api5_tlb::ksObject3DNotifyResultPtr __fastcall GetObject3DNotifyResult();
  TOLEBOOL        __fastcall UpdatePlacementEx(TOLEBOOL redraw);
  TOLEBOOL        __fastcall RebuildModelEx(TOLEBOOL redraw);
  TOLEBOOL        __fastcall CurveIntersection(LPDISPATCH curve, LPDISPATCH parts, LPDISPATCH fases
                                               , LPDISPATCH points);
  TOLEBOOL        __fastcall TransformPoint(double* x, double* y, double* z, LPDISPATCH part1);
  TOLEBOOL        __fastcall SetObject(long index, LPDISPATCH obj);
  LPDISPATCH      __fastcall GetObject(long index);
  long            __fastcall GetCountObj();
  TOLEBOOL        __fastcall ClearAllObj();
  LPDISPATCH      __fastcall CreateOrEditObject(short objType, LPDISPATCH editObj);
  TOLEBOOL        __fastcall TransformPoints(TVariant* points, LPDISPATCH part1);
  TVariant        __fastcall GetSummMatrix(LPDISPATCH part1);
  TOLEBOOL        __fastcall get_MultiBodyParts();
  TOLEBOOL        __fastcall SetSourceVariables(TOLEBOOL Rebuild);
  LPDISPATCH      __fastcall GetObjectByName(BSTR name, short objType, TOLEBOOL testFullName, 
                                             TOLEBOOL testIgnoreCase);
  TOLEBOOL        __fastcall GetGabarit(TOLEBOOL full, TOLEBOOL customizable, double* x1, double* y1
                                        , double* z1, double* x2, double* y2, double* z2);

  __property   BSTR            name = {read = get_name, write = set_name};
  __property   BSTR            marking = {read = get_marking, write = set_marking};
  __property   TOLEBOOL        fixedComponent = {read = get_fixedComponent, write = set_fixedComponent};
  __property   TOLEBOOL        standardComponent = {read = get_standardComponent, write = set_standardComponent};
  __property   BSTR            fileName = {read = get_fileName, write = set_fileName};
  __property   TOLEBOOL        excluded = {read = get_excluded, write = set_excluded};
  __property   long            useColor = {read = get_useColor, write = set_useColor};
  __property   TOLEBOOL        needRebuild = {read = get_needRebuild, write = set_needRebuild};
  __property   TOLEBOOL        hidden = {read = get_hidden, write = set_hidden};
  __property   TOLEBOOL        DoubleClickEditOff = {read = get_DoubleClickEditOff, write = set_DoubleClickEditOff};
  __property   BSTR            material = {read = get_material};
  __property   double          density = {read = get_density};
  __property   TOLEBOOL        MultiBodyParts = {read = get_MultiBodyParts};
};
typedef ksPartDispT<ksPart> ksPartDisp;

// *********************************************************************//
// DispIntf:  ksObject3DNotify
// Flags:     (4096) Dispatchable
// GUID:      {BFA024B6-679E-4A95-B6C2-1EA47A7CD0E9}
// *********************************************************************//
template <class T>
class ksObject3DNotifyDispT : public TAutoDriver<ksObject3DNotify>
{
public:
  ksObject3DNotifyDispT(){}

  void Attach(LPUNKNOWN punk)
  { m_Dispatch = static_cast<T*>(punk); }

  TOLEBOOL        __fastcall BeginDelete(LPDISPATCH obj);
  TOLEBOOL        __fastcall Delete(LPDISPATCH obj);
  TOLEBOOL        __fastcall excluded(LPDISPATCH obj, TOLEBOOL excluded);
  TOLEBOOL        __fastcall hidden(LPDISPATCH obj, TOLEBOOL _hidden);
  TOLEBOOL        __fastcall BeginPropertyChanged(LPDISPATCH obj);
  TOLEBOOL        __fastcall PropertyChanged(LPDISPATCH obj);
  TOLEBOOL        __fastcall BeginPlacementChanged(LPDISPATCH obj);
  TOLEBOOL        __fastcall PlacementChanged(LPDISPATCH obj);
  TOLEBOOL        __fastcall BeginProcess(long pType, LPDISPATCH obj);
  TOLEBOOL        __fastcall EndProcess(long pType);
  TOLEBOOL        __fastcall CreateObject(LPDISPATCH obj);
  TOLEBOOL        __fastcall UpdateObject(LPDISPATCH obj);

};
typedef ksObject3DNotifyDispT<ksObject3DNotify> ksObject3DNotifyDisp;

// *********************************************************************//
// DispIntf:  ksObject3DNotifyResult
// Flags:     (4096) Dispatchable
// GUID:      {9C3ECC92-E72F-4892-8921-7886F34CA9AD}
// *********************************************************************//
template<class T>
class ksObject3DNotifyResultDispT : public TAutoDriver<ksObject3DNotifyResult>
{
public:
  ksObject3DNotifyResultDispT(){}

  ksObject3DNotifyResultDispT(ksObject3DNotifyResult *pintf)
  {
    TAutoDriver<ksObject3DNotifyResult>::Bind(pintf, false);
  }

  ksObject3DNotifyResultDispT(ksObject3DNotifyResultPtr pintf)
  {
    TAutoDriver<ksObject3DNotifyResult>::Bind(pintf, true);
  }

  ksObject3DNotifyResultDispT& operator=(ksObject3DNotifyResult *pintf)
  {
    TAutoDriver<ksObject3DNotifyResult>::Bind(pintf, false);
    return *this;
  }

  ksObject3DNotifyResultDispT& operator=(ksObject3DNotifyResultPtr pintf)
  {
    TAutoDriver<ksObject3DNotifyResult>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Object3DNotifyResult));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Object3DNotifyResult);
  }

  long            __fastcall GetNotifyType();
  Kompas6api5_tlb::ksFeatureCollectionPtr __fastcall GetFeatureCollection();
  Kompas6api5_tlb::ksPlacementPtr __fastcall GetPlacement();
  long            __fastcall GetProcessType();

};
typedef ksObject3DNotifyResultDispT<ksObject3DNotifyResult> ksObject3DNotifyResultDisp;

// *********************************************************************//
// DispIntf:  ksPlacement
// Flags:     (4096) Dispatchable
// GUID:      {2DFACC64-C4A4-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksPlacementDispT : public TAutoDriver<ksPlacement>
{
public:
  ksPlacementDispT(){}

  ksPlacementDispT(ksPlacement *pintf)
  {
    TAutoDriver<ksPlacement>::Bind(pintf, false);
  }

  ksPlacementDispT(ksPlacementPtr pintf)
  {
    TAutoDriver<ksPlacement>::Bind(pintf, true);
  }

  ksPlacementDispT& operator=(ksPlacement *pintf)
  {
    TAutoDriver<ksPlacement>::Bind(pintf, false);
    return *this;
  }

  ksPlacementDispT& operator=(ksPlacementPtr pintf)
  {
    TAutoDriver<ksPlacement>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_placement));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_placement);
  }

  TOLEBOOL        __fastcall GetOrigin(double* x, double* y, double* z);
  TOLEBOOL        __fastcall SetOrigin(double x, double y, double z);
  TOLEBOOL        __fastcall GetAxis(double* x, double* y, double* z, long type);
  TOLEBOOL        __fastcall SetAxis(double x, double y, double z, long type);
  TOLEBOOL        __fastcall SetPlacement(LPDISPATCH placement);
  TOLEBOOL        __fastcall SetAxes(double Xx, double Xy, double Xz, double Yx, double Yy, 
                                     double Yz);
  TOLEBOOL        __fastcall PointProjection(double XIn, double YIn, double ZIn, double* XOut, 
                                             double* YOut);
  TOLEBOOL        __fastcall PointOn(double XIn, double YIn, double* XOut, double* YOut, 
                                     double* ZOut);

};
typedef ksPlacementDispT<ksPlacement> ksPlacementDisp;

// *********************************************************************//
// DispIntf:  ksComponentPositioner
// Flags:     (4096) Dispatchable
// GUID:      {508B5962-DF59-4CEE-8611-AD10FDF0C811}
// *********************************************************************//
template<class T>
class ksComponentPositionerDispT : public TAutoDriver<ksComponentPositioner>
{
public:
  ksComponentPositionerDispT(){}

  ksComponentPositionerDispT(ksComponentPositioner *pintf)
  {
    TAutoDriver<ksComponentPositioner>::Bind(pintf, false);
  }

  ksComponentPositionerDispT(ksComponentPositionerPtr pintf)
  {
    TAutoDriver<ksComponentPositioner>::Bind(pintf, true);
  }

  ksComponentPositionerDispT& operator=(ksComponentPositioner *pintf)
  {
    TAutoDriver<ksComponentPositioner>::Bind(pintf, false);
    return *this;
  }

  ksComponentPositionerDispT& operator=(ksComponentPositionerPtr pintf)
  {
    TAutoDriver<ksComponentPositioner>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ComponentPositioner));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ComponentPositioner);
  }

  TOLEBOOL        __fastcall SetPlaneByPlacement(Kompas6api5_tlb::ksPlacementPtr plane);
  TOLEBOOL        __fastcall SetPlane(LPDISPATCH plane);
  TOLEBOOL        __fastcall SetPlaneByPoints(double x1, double y1, double z1, double x2, double y2
                                              , double z2, double x3, double y3, double z3);
  TOLEBOOL        __fastcall SetDragPoint(double x, double y, double z);
  TOLEBOOL        __fastcall SetAxis(LPDISPATCH axis);
  TOLEBOOL        __fastcall SetAxisByPoints(double x1, double y1, double z1, double x2, double y2, 
                                             double z2);
  long            __fastcall Prepare(Kompas6api5_tlb::ksPartPtr part, long positionerType);
  TOLEBOOL        __fastcall MoveComponent(double x, double y, double z);
  TOLEBOOL        __fastcall RotateComponent(double angl);
  TOLEBOOL        __fastcall Finish();

};
typedef ksComponentPositionerDispT<ksComponentPositioner> ksComponentPositionerDisp;

// *********************************************************************//
// DispIntf:  ksKompasObjectNotify
// Flags:     (4096) Dispatchable
// GUID:      {C7CB743A-C59D-4C27-8CB6-971C2A393F2F}
// *********************************************************************//
template <class T>
class ksKompasObjectNotifyDispT : public TAutoDriver<ksKompasObjectNotify>
{
public:
  ksKompasObjectNotifyDispT(){}

  void Attach(LPUNKNOWN punk)
  { m_Dispatch = static_cast<T*>(punk); }

  TOLEBOOL        __fastcall CreateDocument(LPDISPATCH newDoc, long docType);
  TOLEBOOL        __fastcall BeginOpenDocument(BSTR fileName);
  TOLEBOOL        __fastcall OpenDocument(LPDISPATCH newDoc, long docType);
  TOLEBOOL        __fastcall ChangeActiveDocument(LPDISPATCH newDoc, long docType);
  TOLEBOOL        __fastcall ApplicationDestroy();
  TOLEBOOL        __fastcall BeginCreate(long docType);
  TOLEBOOL        __fastcall BeginOpenFile();
  TOLEBOOL        __fastcall BeginCloseAllDocument();
  TOLEBOOL        __fastcall KeyDown(long* key/*[in,out]*/, long flags/*[in]*/, TOLEBOOL systemKey);
  TOLEBOOL        __fastcall KeyUp(long* key/*[in,out]*/, long flags/*[in]*/, TOLEBOOL systemKey);
  TOLEBOOL        __fastcall KeyPress(long* key/*[in,out]*/, TOLEBOOL systemKey);
  TOLEBOOL        __fastcall BeginReguestFiles(long requestID, TVariant* files);

};
typedef ksKompasObjectNotifyDispT<ksKompasObjectNotify> ksKompasObjectNotifyDisp;

// *********************************************************************//
// DispIntf:  ksDocumentFileNotify
// Flags:     (4096) Dispatchable
// GUID:      {324C1A45-67AD-41FB-BE57-624F930646F1}
// *********************************************************************//
template <class T>
class ksDocumentFileNotifyDispT : public TAutoDriver<ksDocumentFileNotify>
{
public:
  ksDocumentFileNotifyDispT(){}

  void Attach(LPUNKNOWN punk)
  { m_Dispatch = static_cast<T*>(punk); }

  TOLEBOOL        __fastcall BeginCloseDocument();
  TOLEBOOL        __fastcall CloseDocument();
  TOLEBOOL        __fastcall BeginSaveDocument(BSTR fileName);
  TOLEBOOL        __fastcall SaveDocument();
  TOLEBOOL        __fastcall Activate();
  TOLEBOOL        __fastcall Deactivate();
  TOLEBOOL        __fastcall BeginSaveAsDocument();
  TOLEBOOL        __fastcall DocumentFrameOpen(LPDISPATCH v);
  TOLEBOOL        __fastcall ProcessActivate(long iD);
  TOLEBOOL        __fastcall ProcessDeactivate(long iD);

};
typedef ksDocumentFileNotifyDispT<ksDocumentFileNotify> ksDocumentFileNotifyDisp;

// *********************************************************************//
// DispIntf:  ksDocument3DNotifyResult
// Flags:     (4096) Dispatchable
// GUID:      {9F88CAAA-A50F-46F4-904A-846C792FA649}
// *********************************************************************//
template<class T>
class ksDocument3DNotifyResultDispT : public TAutoDriver<ksDocument3DNotifyResult>
{
public:
  ksDocument3DNotifyResultDispT(){}

  ksDocument3DNotifyResultDispT(ksDocument3DNotifyResult *pintf)
  {
    TAutoDriver<ksDocument3DNotifyResult>::Bind(pintf, false);
  }

  ksDocument3DNotifyResultDispT(ksDocument3DNotifyResultPtr pintf)
  {
    TAutoDriver<ksDocument3DNotifyResult>::Bind(pintf, true);
  }

  ksDocument3DNotifyResultDispT& operator=(ksDocument3DNotifyResult *pintf)
  {
    TAutoDriver<ksDocument3DNotifyResult>::Bind(pintf, false);
    return *this;
  }

  ksDocument3DNotifyResultDispT& operator=(ksDocument3DNotifyResultPtr pintf)
  {
    TAutoDriver<ksDocument3DNotifyResult>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Document3DNotifyResult));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Document3DNotifyResult);
  }

  long            __fastcall GetNotifyType();
  long            __fastcall GetNotifyObjectType();
  LPDISPATCH      __fastcall GetNotifyObject();

};
typedef ksDocument3DNotifyResultDispT<ksDocument3DNotifyResult> ksDocument3DNotifyResultDisp;

// *********************************************************************//
// DispIntf:  ksSpecRoughParam
// Flags:     (4096) Dispatchable
// GUID:      {364521A3-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksSpecRoughParamDispT : public TAutoDriver<ksSpecRoughParam>
{
public:
  ksSpecRoughParamDispT(){}

  ksSpecRoughParamDispT(ksSpecRoughParam *pintf)
  {
    TAutoDriver<ksSpecRoughParam>::Bind(pintf, false);
  }

  ksSpecRoughParamDispT(ksSpecRoughParamPtr pintf)
  {
    TAutoDriver<ksSpecRoughParam>::Bind(pintf, true);
  }

  ksSpecRoughParamDispT& operator=(ksSpecRoughParam *pintf)
  {
    TAutoDriver<ksSpecRoughParam>::Bind(pintf, false);
    return *this;
  }

  ksSpecRoughParamDispT& operator=(ksSpecRoughParamPtr pintf)
  {
    TAutoDriver<ksSpecRoughParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_SpecRoughParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_SpecRoughParam);
  }

  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  void            __fastcall set_sign(short Value);
  short           __fastcall get_sign();
  void            __fastcall set_t(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_t();
  void            __fastcall set_s(BSTR Value);
  BSTR            __fastcall get_s();
  TOLEBOOL        __fastcall Init();

  __property   long            style = {read = get_style, write = set_style};
  __property   short           sign = {read = get_sign, write = set_sign};
  __property   TOLEBOOL        t = {read = get_t, write = set_t};
  __property   BSTR            s = {read = get_s, write = set_s};
};
typedef ksSpecRoughParamDispT<ksSpecRoughParam> ksSpecRoughParamDisp;

// *********************************************************************//
// DispIntf:  ksEllipseParam
// Flags:     (4096) Dispatchable
// GUID:      {364521A6-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksEllipseParamDispT : public TAutoDriver<ksEllipseParam>
{
public:
  ksEllipseParamDispT(){}

  ksEllipseParamDispT(ksEllipseParam *pintf)
  {
    TAutoDriver<ksEllipseParam>::Bind(pintf, false);
  }

  ksEllipseParamDispT(ksEllipseParamPtr pintf)
  {
    TAutoDriver<ksEllipseParam>::Bind(pintf, true);
  }

  ksEllipseParamDispT& operator=(ksEllipseParam *pintf)
  {
    TAutoDriver<ksEllipseParam>::Bind(pintf, false);
    return *this;
  }

  ksEllipseParamDispT& operator=(ksEllipseParamPtr pintf)
  {
    TAutoDriver<ksEllipseParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_EllipseParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_EllipseParam);
  }

  void            __fastcall set_xc(double Value);
  double          __fastcall get_xc();
  void            __fastcall set_yc(double Value);
  double          __fastcall get_yc();
  void            __fastcall set_A(double Value);
  double          __fastcall get_A();
  void            __fastcall set_B(double Value);
  double          __fastcall get_B();
  void            __fastcall set_angle(double Value);
  double          __fastcall get_angle();
  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  TOLEBOOL        __fastcall Init();

  __property   double          xc = {read = get_xc, write = set_xc};
  __property   double          yc = {read = get_yc, write = set_yc};
  __property   double          A = {read = get_A, write = set_A};
  __property   double          B = {read = get_B, write = set_B};
  __property   double          angle = {read = get_angle, write = set_angle};
  __property   long            style = {read = get_style, write = set_style};
};
typedef ksEllipseParamDispT<ksEllipseParam> ksEllipseParamDisp;

// *********************************************************************//
// DispIntf:  ksEllipseArcParam
// Flags:     (4096) Dispatchable
// GUID:      {364521A9-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksEllipseArcParamDispT : public TAutoDriver<ksEllipseArcParam>
{
public:
  ksEllipseArcParamDispT(){}

  ksEllipseArcParamDispT(ksEllipseArcParam *pintf)
  {
    TAutoDriver<ksEllipseArcParam>::Bind(pintf, false);
  }

  ksEllipseArcParamDispT(ksEllipseArcParamPtr pintf)
  {
    TAutoDriver<ksEllipseArcParam>::Bind(pintf, true);
  }

  ksEllipseArcParamDispT& operator=(ksEllipseArcParam *pintf)
  {
    TAutoDriver<ksEllipseArcParam>::Bind(pintf, false);
    return *this;
  }

  ksEllipseArcParamDispT& operator=(ksEllipseArcParamPtr pintf)
  {
    TAutoDriver<ksEllipseArcParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_EllipseArcParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_EllipseArcParam);
  }

  void            __fastcall set_xc(double Value);
  double          __fastcall get_xc();
  void            __fastcall set_yc(double Value);
  double          __fastcall get_yc();
  void            __fastcall set_A(double Value);
  double          __fastcall get_A();
  void            __fastcall set_B(double Value);
  double          __fastcall get_B();
  void            __fastcall set_angle(double Value);
  double          __fastcall get_angle();
  void            __fastcall set_angleFirst(double Value);
  double          __fastcall get_angleFirst();
  void            __fastcall set_angleSecond(double Value);
  double          __fastcall get_angleSecond();
  void            __fastcall set_direction(double Value);
  double          __fastcall get_direction();
  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  TOLEBOOL        __fastcall Init();

  __property   double          xc = {read = get_xc, write = set_xc};
  __property   double          yc = {read = get_yc, write = set_yc};
  __property   double          A = {read = get_A, write = set_A};
  __property   double          B = {read = get_B, write = set_B};
  __property   double          angle = {read = get_angle, write = set_angle};
  __property   double          angleFirst = {read = get_angleFirst, write = set_angleFirst};
  __property   double          angleSecond = {read = get_angleSecond, write = set_angleSecond};
  __property   double          direction = {read = get_direction, write = set_direction};
  __property   long            style = {read = get_style, write = set_style};
};
typedef ksEllipseArcParamDispT<ksEllipseArcParam> ksEllipseArcParamDisp;

// *********************************************************************//
// DispIntf:  ksEllipseArcParam1
// Flags:     (4096) Dispatchable
// GUID:      {364521AC-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksEllipseArcParam1DispT : public TAutoDriver<ksEllipseArcParam1>
{
public:
  ksEllipseArcParam1DispT(){}

  ksEllipseArcParam1DispT(ksEllipseArcParam1 *pintf)
  {
    TAutoDriver<ksEllipseArcParam1>::Bind(pintf, false);
  }

  ksEllipseArcParam1DispT(ksEllipseArcParam1Ptr pintf)
  {
    TAutoDriver<ksEllipseArcParam1>::Bind(pintf, true);
  }

  ksEllipseArcParam1DispT& operator=(ksEllipseArcParam1 *pintf)
  {
    TAutoDriver<ksEllipseArcParam1>::Bind(pintf, false);
    return *this;
  }

  ksEllipseArcParam1DispT& operator=(ksEllipseArcParam1Ptr pintf)
  {
    TAutoDriver<ksEllipseArcParam1>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_EllipseArcParam1));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_EllipseArcParam1);
  }

  void            __fastcall set_xc(double Value);
  double          __fastcall get_xc();
  void            __fastcall set_yc(double Value);
  double          __fastcall get_yc();
  void            __fastcall set_A(double Value);
  double          __fastcall get_A();
  void            __fastcall set_B(double Value);
  double          __fastcall get_B();
  void            __fastcall set_angle(double Value);
  double          __fastcall get_angle();
  void            __fastcall set_parFirst(double Value);
  double          __fastcall get_parFirst();
  void            __fastcall set_parSecond(double Value);
  double          __fastcall get_parSecond();
  void            __fastcall set_direction(double Value);
  double          __fastcall get_direction();
  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  TOLEBOOL        __fastcall Init();

  __property   double          xc = {read = get_xc, write = set_xc};
  __property   double          yc = {read = get_yc, write = set_yc};
  __property   double          A = {read = get_A, write = set_A};
  __property   double          B = {read = get_B, write = set_B};
  __property   double          angle = {read = get_angle, write = set_angle};
  __property   double          parFirst = {read = get_parFirst, write = set_parFirst};
  __property   double          parSecond = {read = get_parSecond, write = set_parSecond};
  __property   double          direction = {read = get_direction, write = set_direction};
  __property   long            style = {read = get_style, write = set_style};
};
typedef ksEllipseArcParam1DispT<ksEllipseArcParam1> ksEllipseArcParam1Disp;

// *********************************************************************//
// DispIntf:  ksEquidistantParam
// Flags:     (4096) Dispatchable
// GUID:      {364521AF-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksEquidistantParamDispT : public TAutoDriver<ksEquidistantParam>
{
public:
  ksEquidistantParamDispT(){}

  ksEquidistantParamDispT(ksEquidistantParam *pintf)
  {
    TAutoDriver<ksEquidistantParam>::Bind(pintf, false);
  }

  ksEquidistantParamDispT(ksEquidistantParamPtr pintf)
  {
    TAutoDriver<ksEquidistantParam>::Bind(pintf, true);
  }

  ksEquidistantParamDispT& operator=(ksEquidistantParam *pintf)
  {
    TAutoDriver<ksEquidistantParam>::Bind(pintf, false);
    return *this;
  }

  ksEquidistantParamDispT& operator=(ksEquidistantParamPtr pintf)
  {
    TAutoDriver<ksEquidistantParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_EquidistantParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_EquidistantParam);
  }

  void            __fastcall set_geoObj(long Value);
  long            __fastcall get_geoObj();
  void            __fastcall set_side(short Value);
  short           __fastcall get_side();
  void            __fastcall set_cutMode(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_cutMode();
  void            __fastcall set_degState(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_degState();
  void            __fastcall set_radRight(double Value);
  double          __fastcall get_radRight();
  void            __fastcall set_radLeft(double Value);
  double          __fastcall get_radLeft();
  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  TOLEBOOL        __fastcall Init();

  __property   long            geoObj = {read = get_geoObj, write = set_geoObj};
  __property   short           side = {read = get_side, write = set_side};
  __property   TOLEBOOL        cutMode = {read = get_cutMode, write = set_cutMode};
  __property   TOLEBOOL        degState = {read = get_degState, write = set_degState};
  __property   double          radRight = {read = get_radRight, write = set_radRight};
  __property   double          radLeft = {read = get_radLeft, write = set_radLeft};
  __property   long            style = {read = get_style, write = set_style};
};
typedef ksEquidistantParamDispT<ksEquidistantParam> ksEquidistantParamDisp;

// *********************************************************************//
// DispIntf:  ksParagraphParam
// Flags:     (4096) Dispatchable
// GUID:      {364521B2-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksParagraphParamDispT : public TAutoDriver<ksParagraphParam>
{
public:
  ksParagraphParamDispT(){}

  ksParagraphParamDispT(ksParagraphParam *pintf)
  {
    TAutoDriver<ksParagraphParam>::Bind(pintf, false);
  }

  ksParagraphParamDispT(ksParagraphParamPtr pintf)
  {
    TAutoDriver<ksParagraphParam>::Bind(pintf, true);
  }

  ksParagraphParamDispT& operator=(ksParagraphParam *pintf)
  {
    TAutoDriver<ksParagraphParam>::Bind(pintf, false);
    return *this;
  }

  ksParagraphParamDispT& operator=(ksParagraphParamPtr pintf)
  {
    TAutoDriver<ksParagraphParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ParagraphParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ParagraphParam);
  }

  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  void            __fastcall set_x(double Value);
  double          __fastcall get_x();
  void            __fastcall set_y(double Value);
  double          __fastcall get_y();
  void            __fastcall set_ang(double Value);
  double          __fastcall get_ang();
  void            __fastcall set_width(double Value);
  double          __fastcall get_width();
  void            __fastcall set_height(double Value);
  double          __fastcall get_height();
  void            __fastcall set_vFormat(long Value);
  long            __fastcall get_vFormat();
  void            __fastcall set_hFormat(long Value);
  long            __fastcall get_hFormat();
  TOLEBOOL        __fastcall Init();

  __property   long            style = {read = get_style, write = set_style};
  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   double          width = {read = get_width, write = set_width};
  __property   double          height = {read = get_height, write = set_height};
  __property   long            vFormat = {read = get_vFormat, write = set_vFormat};
  __property   long            hFormat = {read = get_hFormat, write = set_hFormat};
};
typedef ksParagraphParamDispT<ksParagraphParam> ksParagraphParamDisp;

// *********************************************************************//
// DispIntf:  ksTextItemParam
// Flags:     (4096) Dispatchable
// GUID:      {364521B7-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksTextItemParamDispT : public TAutoDriver<ksTextItemParam>
{
public:
  ksTextItemParamDispT(){}

  ksTextItemParamDispT(ksTextItemParam *pintf)
  {
    TAutoDriver<ksTextItemParam>::Bind(pintf, false);
  }

  ksTextItemParamDispT(ksTextItemParamPtr pintf)
  {
    TAutoDriver<ksTextItemParam>::Bind(pintf, true);
  }

  ksTextItemParamDispT& operator=(ksTextItemParam *pintf)
  {
    TAutoDriver<ksTextItemParam>::Bind(pintf, false);
    return *this;
  }

  ksTextItemParamDispT& operator=(ksTextItemParamPtr pintf)
  {
    TAutoDriver<ksTextItemParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_TextItemParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_TextItemParam);
  }

  void            __fastcall set_type(long Value);
  long            __fastcall get_type();
  void            __fastcall set_s(BSTR Value);
  BSTR            __fastcall get_s();
  void            __fastcall set_iSNumb(long Value);
  long            __fastcall get_iSNumb();
  TOLEBOOL        __fastcall Init();
  LPDISPATCH      __fastcall GetItemFont();
  TOLEBOOL        __fastcall SetItemFont(LPDISPATCH val);

  __property   long            type = {read = get_type, write = set_type};
  __property   BSTR            s = {read = get_s, write = set_s};
  __property   long            iSNumb = {read = get_iSNumb, write = set_iSNumb};
};
typedef ksTextItemParamDispT<ksTextItemParam> ksTextItemParamDisp;

// *********************************************************************//
// DispIntf:  ksTextLineParam
// Flags:     (4096) Dispatchable
// GUID:      {364521BA-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksTextLineParamDispT : public TAutoDriver<ksTextLineParam>
{
public:
  ksTextLineParamDispT(){}

  ksTextLineParamDispT(ksTextLineParam *pintf)
  {
    TAutoDriver<ksTextLineParam>::Bind(pintf, false);
  }

  ksTextLineParamDispT(ksTextLineParamPtr pintf)
  {
    TAutoDriver<ksTextLineParam>::Bind(pintf, true);
  }

  ksTextLineParamDispT& operator=(ksTextLineParam *pintf)
  {
    TAutoDriver<ksTextLineParam>::Bind(pintf, false);
    return *this;
  }

  ksTextLineParamDispT& operator=(ksTextLineParamPtr pintf)
  {
    TAutoDriver<ksTextLineParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_TextLineParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_TextLineParam);
  }

  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  LPDISPATCH      __fastcall GetTextItemArr();
  TOLEBOOL        __fastcall SetTextItemArr(LPDISPATCH val);
  TOLEBOOL        __fastcall Init();

  __property   long            style = {read = get_style, write = set_style};
};
typedef ksTextLineParamDispT<ksTextLineParam> ksTextLineParamDisp;

// *********************************************************************//
// DispIntf:  ksTextItemFont
// Flags:     (4096) Dispatchable
// GUID:      {364521BD-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksTextItemFontDispT : public TAutoDriver<ksTextItemFont>
{
public:
  ksTextItemFontDispT(){}

  ksTextItemFontDispT(ksTextItemFont *pintf)
  {
    TAutoDriver<ksTextItemFont>::Bind(pintf, false);
  }

  ksTextItemFontDispT(ksTextItemFontPtr pintf)
  {
    TAutoDriver<ksTextItemFont>::Bind(pintf, true);
  }

  ksTextItemFontDispT& operator=(ksTextItemFont *pintf)
  {
    TAutoDriver<ksTextItemFont>::Bind(pintf, false);
    return *this;
  }

  ksTextItemFontDispT& operator=(ksTextItemFontPtr pintf)
  {
    TAutoDriver<ksTextItemFont>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_TextItemFont));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_TextItemFont);
  }

  void            __fastcall set_fontName(BSTR Value);
  BSTR            __fastcall get_fontName();
  void            __fastcall set_height(double Value);
  double          __fastcall get_height();
  void            __fastcall set_ksu(double Value);
  double          __fastcall get_ksu();
  void            __fastcall set_color(long Value);
  long            __fastcall get_color();
  void            __fastcall set_bitVector(long Value);
  long            __fastcall get_bitVector();
  TOLEBOOL        __fastcall Init();
  TOLEBOOL        __fastcall GetBitVectorValue(long val);
  TOLEBOOL        __fastcall SetBitVectorValue(long val, TOLEBOOL state);

  __property   BSTR            fontName = {read = get_fontName, write = set_fontName};
  __property   double          height = {read = get_height, write = set_height};
  __property   double          ksu = {read = get_ksu, write = set_ksu};
  __property   long            color = {read = get_color, write = set_color};
  __property   long            bitVector = {read = get_bitVector, write = set_bitVector};
};
typedef ksTextItemFontDispT<ksTextItemFont> ksTextItemFontDisp;

// *********************************************************************//
// DispIntf:  ksCornerParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C2501-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksCornerParamDispT : public TAutoDriver<ksCornerParam>
{
public:
  ksCornerParamDispT(){}

  ksCornerParamDispT(ksCornerParam *pintf)
  {
    TAutoDriver<ksCornerParam>::Bind(pintf, false);
  }

  ksCornerParamDispT(ksCornerParamPtr pintf)
  {
    TAutoDriver<ksCornerParam>::Bind(pintf, true);
  }

  ksCornerParamDispT& operator=(ksCornerParam *pintf)
  {
    TAutoDriver<ksCornerParam>::Bind(pintf, false);
    return *this;
  }

  ksCornerParamDispT& operator=(ksCornerParamPtr pintf)
  {
    TAutoDriver<ksCornerParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_CornerParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_CornerParam);
  }

  void            __fastcall set_index(long Value);
  long            __fastcall get_index();
  void            __fastcall set_fillet(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_fillet();
  void            __fastcall set_l1(double Value);
  double          __fastcall get_l1();
  void            __fastcall set_l2(double Value);
  double          __fastcall get_l2();
  TOLEBOOL        __fastcall Init();

  __property   long            index = {read = get_index, write = set_index};
  __property   TOLEBOOL        fillet = {read = get_fillet, write = set_fillet};
  __property   double          l1 = {read = get_l1, write = set_l1};
  __property   double          l2 = {read = get_l2, write = set_l2};
};
typedef ksCornerParamDispT<ksCornerParam> ksCornerParamDisp;

// *********************************************************************//
// DispIntf:  ksContourParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C2504-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksContourParamDispT : public TAutoDriver<ksContourParam>
{
public:
  ksContourParamDispT(){}

  ksContourParamDispT(ksContourParam *pintf)
  {
    TAutoDriver<ksContourParam>::Bind(pintf, false);
  }

  ksContourParamDispT(ksContourParamPtr pintf)
  {
    TAutoDriver<ksContourParam>::Bind(pintf, true);
  }

  ksContourParamDispT& operator=(ksContourParam *pintf)
  {
    TAutoDriver<ksContourParam>::Bind(pintf, false);
    return *this;
  }

  ksContourParamDispT& operator=(ksContourParamPtr pintf)
  {
    TAutoDriver<ksContourParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ContourParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ContourParam);
  }

  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  TOLEBOOL        __fastcall Init();

  __property   long            style = {read = get_style, write = set_style};
};
typedef ksContourParamDispT<ksContourParam> ksContourParamDisp;

// *********************************************************************//
// DispIntf:  ksLayerParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C2507-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksLayerParamDispT : public TAutoDriver<ksLayerParam>
{
public:
  ksLayerParamDispT(){}

  ksLayerParamDispT(ksLayerParam *pintf)
  {
    TAutoDriver<ksLayerParam>::Bind(pintf, false);
  }

  ksLayerParamDispT(ksLayerParamPtr pintf)
  {
    TAutoDriver<ksLayerParam>::Bind(pintf, true);
  }

  ksLayerParamDispT& operator=(ksLayerParam *pintf)
  {
    TAutoDriver<ksLayerParam>::Bind(pintf, false);
    return *this;
  }

  ksLayerParamDispT& operator=(ksLayerParamPtr pintf)
  {
    TAutoDriver<ksLayerParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_LayerParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_LayerParam);
  }

  void            __fastcall set_state(short Value);
  short           __fastcall get_state();
  void            __fastcall set_color(long Value);
  long            __fastcall get_color();
  void            __fastcall set_name(BSTR Value);
  BSTR            __fastcall get_name();
  TOLEBOOL        __fastcall Init();

  __property   short           state = {read = get_state, write = set_state};
  __property   long            color = {read = get_color, write = set_color};
  __property   BSTR            name = {read = get_name, write = set_name};
};
typedef ksLayerParamDispT<ksLayerParam> ksLayerParamDisp;

// *********************************************************************//
// DispIntf:  ksLineParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C250A-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksLineParamDispT : public TAutoDriver<ksLineParam>
{
public:
  ksLineParamDispT(){}

  ksLineParamDispT(ksLineParam *pintf)
  {
    TAutoDriver<ksLineParam>::Bind(pintf, false);
  }

  ksLineParamDispT(ksLineParamPtr pintf)
  {
    TAutoDriver<ksLineParam>::Bind(pintf, true);
  }

  ksLineParamDispT& operator=(ksLineParam *pintf)
  {
    TAutoDriver<ksLineParam>::Bind(pintf, false);
    return *this;
  }

  ksLineParamDispT& operator=(ksLineParamPtr pintf)
  {
    TAutoDriver<ksLineParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_LineParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_LineParam);
  }

  void            __fastcall set_x(double Value);
  double          __fastcall get_x();
  void            __fastcall set_y(double Value);
  double          __fastcall get_y();
  void            __fastcall set_angle(double Value);
  double          __fastcall get_angle();
  TOLEBOOL        __fastcall Init();

  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   double          angle = {read = get_angle, write = set_angle};
};
typedef ksLineParamDispT<ksLineParam> ksLineParamDisp;

// *********************************************************************//
// DispIntf:  ksRegularPolygonParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C250D-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksRegularPolygonParamDispT : public TAutoDriver<ksRegularPolygonParam>
{
public:
  ksRegularPolygonParamDispT(){}

  ksRegularPolygonParamDispT(ksRegularPolygonParam *pintf)
  {
    TAutoDriver<ksRegularPolygonParam>::Bind(pintf, false);
  }

  ksRegularPolygonParamDispT(ksRegularPolygonParamPtr pintf)
  {
    TAutoDriver<ksRegularPolygonParam>::Bind(pintf, true);
  }

  ksRegularPolygonParamDispT& operator=(ksRegularPolygonParam *pintf)
  {
    TAutoDriver<ksRegularPolygonParam>::Bind(pintf, false);
    return *this;
  }

  ksRegularPolygonParamDispT& operator=(ksRegularPolygonParamPtr pintf)
  {
    TAutoDriver<ksRegularPolygonParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_RegularPolygonParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_RegularPolygonParam);
  }

  void            __fastcall set_count(long Value);
  long            __fastcall get_count();
  void            __fastcall set_xc(double Value);
  double          __fastcall get_xc();
  void            __fastcall set_yc(double Value);
  double          __fastcall get_yc();
  void            __fastcall set_ang(double Value);
  double          __fastcall get_ang();
  void            __fastcall set_radius(double Value);
  double          __fastcall get_radius();
  void            __fastcall set_describe(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_describe();
  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  LPDISPATCH      __fastcall GetPCorner();
  TOLEBOOL        __fastcall SetPCorner(LPDISPATCH val);
  TOLEBOOL        __fastcall Init();

  __property   long            count = {read = get_count, write = set_count};
  __property   double          xc = {read = get_xc, write = set_xc};
  __property   double          yc = {read = get_yc, write = set_yc};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   double          radius = {read = get_radius, write = set_radius};
  __property   TOLEBOOL        describe = {read = get_describe, write = set_describe};
  __property   long            style = {read = get_style, write = set_style};
};
typedef ksRegularPolygonParamDispT<ksRegularPolygonParam> ksRegularPolygonParamDisp;

// *********************************************************************//
// DispIntf:  ksRectangleParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C2510-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksRectangleParamDispT : public TAutoDriver<ksRectangleParam>
{
public:
  ksRectangleParamDispT(){}

  ksRectangleParamDispT(ksRectangleParam *pintf)
  {
    TAutoDriver<ksRectangleParam>::Bind(pintf, false);
  }

  ksRectangleParamDispT(ksRectangleParamPtr pintf)
  {
    TAutoDriver<ksRectangleParam>::Bind(pintf, true);
  }

  ksRectangleParamDispT& operator=(ksRectangleParam *pintf)
  {
    TAutoDriver<ksRectangleParam>::Bind(pintf, false);
    return *this;
  }

  ksRectangleParamDispT& operator=(ksRectangleParamPtr pintf)
  {
    TAutoDriver<ksRectangleParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_RectangleParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_RectangleParam);
  }

  void            __fastcall set_x(double Value);
  double          __fastcall get_x();
  void            __fastcall set_y(double Value);
  double          __fastcall get_y();
  void            __fastcall set_ang(double Value);
  double          __fastcall get_ang();
  void            __fastcall set_height(double Value);
  double          __fastcall get_height();
  void            __fastcall set_width(double Value);
  double          __fastcall get_width();
  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  LPDISPATCH      __fastcall GetPCorner();
  TOLEBOOL        __fastcall SetPCorner(LPDISPATCH val);
  TOLEBOOL        __fastcall Init();

  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   double          height = {read = get_height, write = set_height};
  __property   double          width = {read = get_width, write = set_width};
  __property   long            style = {read = get_style, write = set_style};
};
typedef ksRectangleParamDispT<ksRectangleParam> ksRectangleParamDisp;

// *********************************************************************//
// DispIntf:  ksBaseParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C2513-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksBaseParamDispT : public TAutoDriver<ksBaseParam>
{
public:
  ksBaseParamDispT(){}

  ksBaseParamDispT(ksBaseParam *pintf)
  {
    TAutoDriver<ksBaseParam>::Bind(pintf, false);
  }

  ksBaseParamDispT(ksBaseParamPtr pintf)
  {
    TAutoDriver<ksBaseParam>::Bind(pintf, true);
  }

  ksBaseParamDispT& operator=(ksBaseParam *pintf)
  {
    TAutoDriver<ksBaseParam>::Bind(pintf, false);
    return *this;
  }

  ksBaseParamDispT& operator=(ksBaseParamPtr pintf)
  {
    TAutoDriver<ksBaseParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_BaseParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_BaseParam);
  }

  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  void            __fastcall set_x1(double Value);
  double          __fastcall get_x1();
  void            __fastcall set_y1(double Value);
  double          __fastcall get_y1();
  void            __fastcall set_x2(double Value);
  double          __fastcall get_x2();
  void            __fastcall set_y2(double Value);
  double          __fastcall get_y2();
  void            __fastcall set_type(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_type();
  void            __fastcall set_str(BSTR Value);
  BSTR            __fastcall get_str();
  LPDISPATCH      __fastcall GetPTextItem();
  TOLEBOOL        __fastcall SetPTextItem(LPDISPATCH val);
  TOLEBOOL        __fastcall Init();

  __property   long            style = {read = get_style, write = set_style};
  __property   double          x1 = {read = get_x1, write = set_x1};
  __property   double          y1 = {read = get_y1, write = set_y1};
  __property   double          x2 = {read = get_x2, write = set_x2};
  __property   double          y2 = {read = get_y2, write = set_y2};
  __property   TOLEBOOL        type = {read = get_type, write = set_type};
  __property   BSTR            str = {read = get_str, write = set_str};
};
typedef ksBaseParamDispT<ksBaseParam> ksBaseParamDisp;

// *********************************************************************//
// DispIntf:  ksLtVariant
// Flags:     (4096) Dispatchable
// GUID:      {E79C2516-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksLtVariantDispT : public TAutoDriver<ksLtVariant>
{
public:
  ksLtVariantDispT(){}

  ksLtVariantDispT(ksLtVariant *pintf)
  {
    TAutoDriver<ksLtVariant>::Bind(pintf, false);
  }

  ksLtVariantDispT(ksLtVariantPtr pintf)
  {
    TAutoDriver<ksLtVariant>::Bind(pintf, true);
  }

  ksLtVariantDispT& operator=(ksLtVariant *pintf)
  {
    TAutoDriver<ksLtVariant>::Bind(pintf, false);
    return *this;
  }

  ksLtVariantDispT& operator=(ksLtVariantPtr pintf)
  {
    TAutoDriver<ksLtVariant>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_LtVariant));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_LtVariant);
  }

  void            __fastcall set_strVal(BSTR Value);
  BSTR            __fastcall get_strVal();
  void            __fastcall set_shortVal(short Value);
  short           __fastcall get_shortVal();
  void            __fastcall set_intVal(long Value);
  long            __fastcall get_intVal();
  void            __fastcall set_longVal(long Value);
  long            __fastcall get_longVal();
  void            __fastcall set_floatVal(float Value);
  float           __fastcall get_floatVal();
  void            __fastcall set_doubleVal(double Value);
  double          __fastcall get_doubleVal();
  void            __fastcall set_charVal(short Value);
  short           __fastcall get_charVal();
  void            __fastcall set_uCharVal(short Value);
  short           __fastcall get_uCharVal();
  void            __fastcall set_uIntVal(long Value);
  long            __fastcall get_uIntVal();
  void            __fastcall set_wstrVal(BSTR Value);
  BSTR            __fastcall get_wstrVal();
  short           __fastcall get_valType();
  TOLEBOOL        __fastcall Init();

  __property   BSTR            strVal = {read = get_strVal, write = set_strVal};
  __property   short           shortVal = {read = get_shortVal, write = set_shortVal};
  __property   long            intVal = {read = get_intVal, write = set_intVal};
  __property   long            longVal = {read = get_longVal, write = set_longVal};
  __property   float           floatVal = {read = get_floatVal, write = set_floatVal};
  __property   double          doubleVal = {read = get_doubleVal, write = set_doubleVal};
  __property   short           charVal = {read = get_charVal, write = set_charVal};
  __property   short           uCharVal = {read = get_uCharVal, write = set_uCharVal};
  __property   long            uIntVal = {read = get_uIntVal, write = set_uIntVal};
  __property   BSTR            wstrVal = {read = get_wstrVal, write = set_wstrVal};
  __property   short           valType = {read = get_valType};
};
typedef ksLtVariantDispT<ksLtVariant> ksLtVariantDisp;

// *********************************************************************//
// DispIntf:  ksUserParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C2519-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksUserParamDispT : public TAutoDriver<ksUserParam>
{
public:
  ksUserParamDispT(){}

  ksUserParamDispT(ksUserParam *pintf)
  {
    TAutoDriver<ksUserParam>::Bind(pintf, false);
  }

  ksUserParamDispT(ksUserParamPtr pintf)
  {
    TAutoDriver<ksUserParam>::Bind(pintf, true);
  }

  ksUserParamDispT& operator=(ksUserParam *pintf)
  {
    TAutoDriver<ksUserParam>::Bind(pintf, false);
    return *this;
  }

  ksUserParamDispT& operator=(ksUserParamPtr pintf)
  {
    TAutoDriver<ksUserParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_UserParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_UserParam);
  }

  void            __fastcall set_fileName(BSTR Value);
  BSTR            __fastcall get_fileName();
  void            __fastcall set_libName(BSTR Value);
  BSTR            __fastcall get_libName();
  void            __fastcall set_number(long Value);
  long            __fastcall get_number();
  void            __fastcall set_UserParams(TVariant Value);
  TVariant        __fastcall get_UserParams();
  LPDISPATCH      __fastcall GetUserArray();
  TOLEBOOL        __fastcall SetUserArray(LPDISPATCH val);
  TOLEBOOL        __fastcall Init();

  __property   BSTR            fileName = {read = get_fileName, write = set_fileName};
  __property   BSTR            libName = {read = get_libName, write = set_libName};
  __property   long            number = {read = get_number, write = set_number};
  __property   TVariant        UserParams = {read = get_UserParams, write = set_UserParams};
};
typedef ksUserParamDispT<ksUserParam> ksUserParamDisp;

// *********************************************************************//
// DispIntf:  ksMathPointParam
// Flags:     (4096) Dispatchable
// GUID:      {3198E121-9585-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksMathPointParamDispT : public TAutoDriver<ksMathPointParam>
{
public:
  ksMathPointParamDispT(){}

  ksMathPointParamDispT(ksMathPointParam *pintf)
  {
    TAutoDriver<ksMathPointParam>::Bind(pintf, false);
  }

  ksMathPointParamDispT(ksMathPointParamPtr pintf)
  {
    TAutoDriver<ksMathPointParam>::Bind(pintf, true);
  }

  ksMathPointParamDispT& operator=(ksMathPointParam *pintf)
  {
    TAutoDriver<ksMathPointParam>::Bind(pintf, false);
    return *this;
  }

  ksMathPointParamDispT& operator=(ksMathPointParamPtr pintf)
  {
    TAutoDriver<ksMathPointParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_MathPointParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_MathPointParam);
  }

  void            __fastcall set_x(double Value);
  double          __fastcall get_x();
  void            __fastcall set_y(double Value);
  double          __fastcall get_y();
  TOLEBOOL        __fastcall Init();

  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
};
typedef ksMathPointParamDispT<ksMathPointParam> ksMathPointParamDisp;

// *********************************************************************//
// DispIntf:  ksCurvePicture
// Flags:     (4096) Dispatchable
// GUID:      {910EC541-958D-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksCurvePictureDispT : public TAutoDriver<ksCurvePicture>
{
public:
  ksCurvePictureDispT(){}

  ksCurvePictureDispT(ksCurvePicture *pintf)
  {
    TAutoDriver<ksCurvePicture>::Bind(pintf, false);
  }

  ksCurvePictureDispT(ksCurvePicturePtr pintf)
  {
    TAutoDriver<ksCurvePicture>::Bind(pintf, true);
  }

  ksCurvePictureDispT& operator=(ksCurvePicture *pintf)
  {
    TAutoDriver<ksCurvePicture>::Bind(pintf, false);
    return *this;
  }

  ksCurvePictureDispT& operator=(ksCurvePicturePtr pintf)
  {
    TAutoDriver<ksCurvePicture>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_CurvePicture));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_CurvePicture);
  }

  LPDISPATCH      __fastcall GetPolygon();
  TOLEBOOL        __fastcall SetPolygon(LPDISPATCH polygon);
  LPDISPATCH      __fastcall GetFill();
  TOLEBOOL        __fastcall SetFill(LPDISPATCH fill);
  TOLEBOOL        __fastcall Init();

};
typedef ksCurvePictureDispT<ksCurvePicture> ksCurvePictureDisp;

// *********************************************************************//
// DispIntf:  ksCurvePattern
// Flags:     (4096) Dispatchable
// GUID:      {910EC544-958D-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksCurvePatternDispT : public TAutoDriver<ksCurvePattern>
{
public:
  ksCurvePatternDispT(){}

  ksCurvePatternDispT(ksCurvePattern *pintf)
  {
    TAutoDriver<ksCurvePattern>::Bind(pintf, false);
  }

  ksCurvePatternDispT(ksCurvePatternPtr pintf)
  {
    TAutoDriver<ksCurvePattern>::Bind(pintf, true);
  }

  ksCurvePatternDispT& operator=(ksCurvePattern *pintf)
  {
    TAutoDriver<ksCurvePattern>::Bind(pintf, false);
    return *this;
  }

  ksCurvePatternDispT& operator=(ksCurvePatternPtr pintf)
  {
    TAutoDriver<ksCurvePattern>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_CurvePattern));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_CurvePattern);
  }

  void            __fastcall set_visibleSeg(double Value);
  double          __fastcall get_visibleSeg();
  void            __fastcall set_invisibleSeg(double Value);
  double          __fastcall get_invisibleSeg();
  TOLEBOOL        __fastcall Init();

  __property   double          visibleSeg = {read = get_visibleSeg, write = set_visibleSeg};
  __property   double          invisibleSeg = {read = get_invisibleSeg, write = set_invisibleSeg};
};
typedef ksCurvePatternDispT<ksCurvePattern> ksCurvePatternDisp;

// *********************************************************************//
// DispIntf:  ksTAN
// Flags:     (4096) Dispatchable
// GUID:      {8075EDE4-6C85-4711-8685-68FBE359D4C4}
// *********************************************************************//
template<class T>
class ksTANDispT : public TAutoDriver<ksTAN>
{
public:
  ksTANDispT(){}

  ksTANDispT(ksTAN *pintf)
  {
    TAutoDriver<ksTAN>::Bind(pintf, false);
  }

  ksTANDispT(ksTANPtr pintf)
  {
    TAutoDriver<ksTAN>::Bind(pintf, true);
  }

  ksTANDispT& operator=(ksTAN *pintf)
  {
    TAutoDriver<ksTAN>::Bind(pintf, false);
    return *this;
  }

  ksTANDispT& operator=(ksTANPtr pintf)
  {
    TAutoDriver<ksTAN>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_TAN));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_TAN);
  }

  double          __fastcall get_x1(long index);
  double          __fastcall get_y1(long index);
  double          __fastcall get_x2(long index);
  double          __fastcall get_y2(long index);

};
typedef ksTANDispT<ksTAN> ksTANDisp;

// *********************************************************************//
// DispIntf:  ksCON
// Flags:     (4096) Dispatchable
// GUID:      {C175BFB8-D7D6-4325-BFDA-2A282B9D1119}
// *********************************************************************//
template<class T>
class ksCONDispT : public TAutoDriver<ksCON>
{
public:
  ksCONDispT(){}

  ksCONDispT(ksCON *pintf)
  {
    TAutoDriver<ksCON>::Bind(pintf, false);
  }

  ksCONDispT(ksCONPtr pintf)
  {
    TAutoDriver<ksCON>::Bind(pintf, true);
  }

  ksCONDispT& operator=(ksCON *pintf)
  {
    TAutoDriver<ksCON>::Bind(pintf, false);
    return *this;
  }

  ksCONDispT& operator=(ksCONPtr pintf)
  {
    TAutoDriver<ksCON>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_CON));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_CON);
  }

  long            __fastcall GetCount();
  double          __fastcall GetXc(long index);
  double          __fastcall GetYc(long index);
  double          __fastcall GetX1(long index);
  double          __fastcall GetY1(long index);
  double          __fastcall GetX2(long index);
  double          __fastcall GetY2(long index);

};
typedef ksCONDispT<ksCON> ksCONDisp;

// *********************************************************************//
// DispIntf:  ksInertiaParam
// Flags:     (4096) Dispatchable
// GUID:      {EA92E649-239E-4105-BBD3-AEF4817BD783}
// *********************************************************************//
template<class T>
class ksInertiaParamDispT : public TAutoDriver<ksInertiaParam>
{
public:
  ksInertiaParamDispT(){}

  ksInertiaParamDispT(ksInertiaParam *pintf)
  {
    TAutoDriver<ksInertiaParam>::Bind(pintf, false);
  }

  ksInertiaParamDispT(ksInertiaParamPtr pintf)
  {
    TAutoDriver<ksInertiaParam>::Bind(pintf, true);
  }

  ksInertiaParamDispT& operator=(ksInertiaParam *pintf)
  {
    TAutoDriver<ksInertiaParam>::Bind(pintf, false);
    return *this;
  }

  ksInertiaParamDispT& operator=(ksInertiaParamPtr pintf)
  {
    TAutoDriver<ksInertiaParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_InertiaParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_InertiaParam);
  }

  double          __fastcall get_xc();
  double          __fastcall get_yc();
  double          __fastcall get_F();
  double          __fastcall get_ly();
  double          __fastcall get_lx();
  double          __fastcall get_lxy();
  double          __fastcall get_mx();
  double          __fastcall get_my();
  double          __fastcall get_mxy();
  double          __fastcall get_jx();
  double          __fastcall get_jy();
  double          __fastcall get_A();

  __property   double          xc = {read = get_xc};
  __property   double          yc = {read = get_yc};
  __property   double          F = {read = get_F};
  __property   double          ly = {read = get_ly};
  __property   double          lx = {read = get_lx};
  __property   double          lxy = {read = get_lxy};
  __property   double          mx = {read = get_mx};
  __property   double          my = {read = get_my};
  __property   double          mxy = {read = get_mxy};
  __property   double          jx = {read = get_jx};
  __property   double          jy = {read = get_jy};
  __property   double          A = {read = get_A};
};
typedef ksInertiaParamDispT<ksInertiaParam> ksInertiaParamDisp;

// *********************************************************************//
// DispIntf:  ksMassInertiaParam
// Flags:     (4096) Dispatchable
// GUID:      {283F77EB-7E2C-4F71-8B16-4D286FA4857E}
// *********************************************************************//
template<class T>
class ksMassInertiaParamDispT : public TAutoDriver<ksMassInertiaParam>
{
public:
  ksMassInertiaParamDispT(){}

  ksMassInertiaParamDispT(ksMassInertiaParam *pintf)
  {
    TAutoDriver<ksMassInertiaParam>::Bind(pintf, false);
  }

  ksMassInertiaParamDispT(ksMassInertiaParamPtr pintf)
  {
    TAutoDriver<ksMassInertiaParam>::Bind(pintf, true);
  }

  ksMassInertiaParamDispT& operator=(ksMassInertiaParam *pintf)
  {
    TAutoDriver<ksMassInertiaParam>::Bind(pintf, false);
    return *this;
  }

  ksMassInertiaParamDispT& operator=(ksMassInertiaParamPtr pintf)
  {
    TAutoDriver<ksMassInertiaParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_MassInertiaParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_MassInertiaParam);
  }

  double          __fastcall get_xc();
  double          __fastcall get_yc();
  double          __fastcall get_zc();
  double          __fastcall get_lx();
  double          __fastcall get_ly();
  double          __fastcall get_lz();
  double          __fastcall get_jx();
  double          __fastcall get_jy();
  double          __fastcall get_jz();
  double          __fastcall get_jxy();
  double          __fastcall get_jxz();
  double          __fastcall get_jyz();
  double          __fastcall get_jx0z();
  double          __fastcall get_jy0z();
  double          __fastcall get_jx0y();
  double          __fastcall get_lxy();
  double          __fastcall get_lxz();
  double          __fastcall get_lyz();
  double          __fastcall get_r();
  double          __fastcall get_m();
  double          __fastcall get_v();
  TOLEBOOL        __fastcall SetBitVectorValue(long val, TOLEBOOL setState);
  double          __fastcall get_F();
  double          __fastcall get_jx0();
  double          __fastcall get_jy0();
  double          __fastcall get_jz0();
  TOLEBOOL        __fastcall GetAxisX(double* x, double* y, double* z);
  TOLEBOOL        __fastcall GetAxisY(double* x, double* y, double* z);
  TOLEBOOL        __fastcall GetAxisZ(double* x, double* y, double* z);

  __property   double          xc = {read = get_xc};
  __property   double          yc = {read = get_yc};
  __property   double          zc = {read = get_zc};
  __property   double          lx = {read = get_lx};
  __property   double          ly = {read = get_ly};
  __property   double          lz = {read = get_lz};
  __property   double          jx = {read = get_jx};
  __property   double          jy = {read = get_jy};
  __property   double          jz = {read = get_jz};
  __property   double          jxy = {read = get_jxy};
  __property   double          jxz = {read = get_jxz};
  __property   double          jyz = {read = get_jyz};
  __property   double          jx0z = {read = get_jx0z};
  __property   double          jy0z = {read = get_jy0z};
  __property   double          jx0y = {read = get_jx0y};
  __property   double          lxy = {read = get_lxy};
  __property   double          lxz = {read = get_lxz};
  __property   double          lyz = {read = get_lyz};
  __property   double          r = {read = get_r};
  __property   double          m = {read = get_m};
  __property   double          v = {read = get_v};
  __property   double          F = {read = get_F};
  __property   double          jx0 = {read = get_jx0};
  __property   double          jy0 = {read = get_jy0};
  __property   double          jz0 = {read = get_jz0};
};
typedef ksMassInertiaParamDispT<ksMassInertiaParam> ksMassInertiaParamDisp;

// *********************************************************************//
// DispIntf:  ksMathematic2D
// Flags:     (4096) Dispatchable
// GUID:      {F2D5AE01-45DE-4496-B01B-9958CAEF5943}
// *********************************************************************//
template<class T>
class ksMathematic2DDispT : public TAutoDriver<ksMathematic2D>
{
public:
  ksMathematic2DDispT(){}

  ksMathematic2DDispT(ksMathematic2D *pintf)
  {
    TAutoDriver<ksMathematic2D>::Bind(pintf, false);
  }

  ksMathematic2DDispT(ksMathematic2DPtr pintf)
  {
    TAutoDriver<ksMathematic2D>::Bind(pintf, true);
  }

  ksMathematic2DDispT& operator=(ksMathematic2D *pintf)
  {
    TAutoDriver<ksMathematic2D>::Bind(pintf, false);
    return *this;
  }

  ksMathematic2DDispT& operator=(ksMathematic2DPtr pintf)
  {
    TAutoDriver<ksMathematic2D>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Mathematic2D));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Mathematic2D);
  }

  double          __fastcall ksCosD(double x);
  double          __fastcall ksSinD(double x);
  double          __fastcall ksTanD(double x);
  double          __fastcall ksAtanD(double x);
  double          __fastcall ksAngle(double x1, double y1, double x2, double y2);
  long            __fastcall ksEqualPoints(double x1, double y1, double x2, double y2);
  TOLEBOOL        __fastcall ksIntersectLinSLinS(double x11, double y11, double x12, double y12, 
                                                 double x21, double y21, double x22, double y22, 
                                                 LPDISPATCH param);
  TOLEBOOL        __fastcall ksIntersectLinSLine(double x1, double y1, double x2, double y2, 
                                                 double x, double y, double ang, LPDISPATCH param);
  TOLEBOOL        __fastcall ksIntersectArcLin(double xc, double yc, double rad, double f1, 
                                               double f2, long n, double x, double y, double ang, 
                                               LPDISPATCH param);
  TOLEBOOL        __fastcall ksIntersectLinLin(double x1, double y1, double angle1, double x2, 
                                               double y2, double angle2, LPDISPATCH param);
  TOLEBOOL        __fastcall ksIntersectCirCir(double xc1, double yc1, double radius1, double xc2, 
                                               double yc2, double radius2, LPDISPATCH param);
  TOLEBOOL        __fastcall ksIntersectArcArc(double xac, double yac, double rada, double fa1, 
                                               double fa2, short directa, double xbc, double ybc, 
                                               double radb, double fb1, double fb2, long directb, 
                                               LPDISPATCH param);
  TOLEBOOL        __fastcall ksIntersectLinSArc(double x1, double y1, double x2, double y2, 
                                                double xc, double yc, double rad, double f1, 
                                                double f2, short direct, LPDISPATCH param);
  TOLEBOOL        __fastcall ksIntersectLinSCir(double x1, double y1, double x2, double y2, 
                                                double xc, double yc, double rad, LPDISPATCH param);
  TOLEBOOL        __fastcall ksIntersectCirLin(double xc, double yc, double rad, double xl, 
                                               double yl, double angle, LPDISPATCH param);
  TOLEBOOL        __fastcall ksIntersectCirArc(double xcc, double ycc, double radc, double xac, 
                                               double yac, double rada, double fa1, double fa2, 
                                               short directa, LPDISPATCH param);
  long            __fastcall ksIntersectCurvCurv(long p1, long p2, LPDISPATCH param);
  TOLEBOOL        __fastcall ksTanLinePointCircle(double x, double y, double xc, double yc, 
                                                  double rad, LPDISPATCH param);
  TOLEBOOL        __fastcall ksTanLineAngCircle(double xc, double yc, double rad, double ang, 
                                                LPDISPATCH param);
  TOLEBOOL        __fastcall ksTanCircleCircle(double xc1, double yc1, double radius1, double xc2, 
                                               double yc2, double radius2, LPDISPATCH param);
  long            __fastcall ksTanLinePointCurve(double x, double y, long pCur, LPDISPATCH array);
  TOLEBOOL        __fastcall ksCouplingLineLine(double x1, double y1, double angle1, double x2, 
                                                double y2, double angle2, double rad, 
                                                LPDISPATCH param);
  TOLEBOOL        __fastcall ksCouplingLineCircle(double xc, double yc, double radc, double x1, 
                                                  double y1, double angle1, double rad, 
                                                  LPDISPATCH param);
  TOLEBOOL        __fastcall ksCouplingCircleCircle(double xc1, double yc1, double radc1, double xc2
                                                    , double yc2, double radc2, double rad, 
                                                    LPDISPATCH param);
  TOLEBOOL        __fastcall ksSymmetry(double x, double y, double x1, double y1, double x2, 
                                        double y2, double* xc, double* yc);
  TOLEBOOL        __fastcall ksRotate(double x, double y, double xc, double yc, double ang, 
                                      double* xr, double* yr);
  double          __fastcall ksDistancePntPnt(double x1, double y1, double x2, double y2);
  double          __fastcall ksDistancePntLineSeg(double x, double y, double x1, double y1, 
                                                  double x2, double y2);
  double          __fastcall ksDistancePntArc(double x, double y, double xac, double yac, 
                                              double rada, double fa1, double fa2, short directa);
  double          __fastcall ksDistancePntCircle(double x, double y, double xc, double yc, 
                                                 double rad);
  double          __fastcall ksDistancePntLine(double x, double y, double x1, double y1, 
                                               double angle);
  double          __fastcall ksDistancePntLineForPoint(double x, double y, double x1, double y1, 
                                                       double x2, double y2);
  TOLEBOOL        __fastcall ksPerpendicular(double x, double y, double x1, double y1, double x2, 
                                             double y2, double* xp, double* yp);
  LPDISPATCH      __fastcall ksPointsOnCurve(long curve, long count);
  double          __fastcall ksGetCurvePerpendicular(long curve, double x, double y);
  long            __fastcall ksGetCurvePointProjection(long curve, double x, double y, double* kx, 
                                                       double* ky);
  long            __fastcall ksMovePointOnCurve(long curve, double* x, double* y, double len, 
                                                long dir);
  long            __fastcall ksCalcInertiaProperties(long p, LPDISPATCH prop, short dimension);
  long            __fastcall ksCalcMassInertiaProperties(long p, LPDISPATCH prop, double density, 
                                                         double param);
  double          __fastcall ksGetCurvePerimeter(long curve, short dimension);
  LPDISPATCH      __fastcall ksPointsOnCurveByStep(long curve, double step);
  double          __fastcall ksDistancePntPntOnCurve(long curve, double x1, double y1, double x2, 
                                                     double y2);
  long            __fastcall ksGetCurvePointProjectionEx(long curve, double x, double y, double* kx
                                                         , double* ky, double* t);
  long            __fastcall ksGetCurvePoint(long curve, double t, double* x, double* y);
  long            __fastcall ksGetCurveMinMaxParametr(long curve, double* tMin, double* tMax);
  double          __fastcall ksDistanceT1T2OnCurve(long curve, double t1, double t2);
  long            __fastcall ksTanCurvCurv(long p1, long p2, LPDISPATCH pointArr1, 
                                           LPDISPATCH pointArr2);

};
typedef ksMathematic2DDispT<ksMathematic2D> ksMathematic2DDisp;

// *********************************************************************//
// DispIntf:  ksDynamicArray
// Flags:     (4096) Dispatchable
// GUID:      {4D91CD9A-6E02-409D-9360-CF7FEF60D31C}
// *********************************************************************//
template<class T>
class ksDynamicArrayDispT : public TAutoDriver<ksDynamicArray>
{
public:
  ksDynamicArrayDispT(){}

  ksDynamicArrayDispT(ksDynamicArray *pintf)
  {
    TAutoDriver<ksDynamicArray>::Bind(pintf, false);
  }

  ksDynamicArrayDispT(ksDynamicArrayPtr pintf)
  {
    TAutoDriver<ksDynamicArray>::Bind(pintf, true);
  }

  ksDynamicArrayDispT& operator=(ksDynamicArray *pintf)
  {
    TAutoDriver<ksDynamicArray>::Bind(pintf, false);
    return *this;
  }

  ksDynamicArrayDispT& operator=(ksDynamicArrayPtr pintf)
  {
    TAutoDriver<ksDynamicArray>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_DynamicArray));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_DynamicArray);
  }

  void            __fastcall set_reference(long Value);
  long            __fastcall get_reference();
  long            __fastcall ksDeleteArray();
  long            __fastcall ksClearArray();
  long            __fastcall ksGetArrayCount();
  long            __fastcall ksGetArrayType();
  long            __fastcall ksExcludeArrayItem(long index);
  long            __fastcall ksAddArrayItem(long index, LPDISPATCH item);
  long            __fastcall ksGetArrayItem(long index, LPDISPATCH item);
  long            __fastcall ksSetArrayItem(long index, LPDISPATCH item);

  __property   long            reference = {read = get_reference, write = set_reference};
};
typedef ksDynamicArrayDispT<ksDynamicArray> ksDynamicArrayDisp;

// *********************************************************************//
// DispIntf:  ksRDimDrawingParam
// Flags:     (4096) Dispatchable
// GUID:      {2A4D4542-95B3-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksRDimDrawingParamDispT : public TAutoDriver<ksRDimDrawingParam>
{
public:
  ksRDimDrawingParamDispT(){}

  ksRDimDrawingParamDispT(ksRDimDrawingParam *pintf)
  {
    TAutoDriver<ksRDimDrawingParam>::Bind(pintf, false);
  }

  ksRDimDrawingParamDispT(ksRDimDrawingParamPtr pintf)
  {
    TAutoDriver<ksRDimDrawingParam>::Bind(pintf, true);
  }

  ksRDimDrawingParamDispT& operator=(ksRDimDrawingParam *pintf)
  {
    TAutoDriver<ksRDimDrawingParam>::Bind(pintf, false);
    return *this;
  }

  ksRDimDrawingParamDispT& operator=(ksRDimDrawingParamPtr pintf)
  {
    TAutoDriver<ksRDimDrawingParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_RDimDrawingParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_RDimDrawingParam);
  }

  void            __fastcall set_pt1(short Value);
  short           __fastcall get_pt1();
  void            __fastcall set_pt2(short Value);
  short           __fastcall get_pt2();
  void            __fastcall set_textPos(long Value);
  long            __fastcall get_textPos();
  void            __fastcall set_ang(double Value);
  double          __fastcall get_ang();
  void            __fastcall set_shelfDir(long Value);
  long            __fastcall get_shelfDir();
  TOLEBOOL        __fastcall Init();

  __property   short           pt1 = {read = get_pt1, write = set_pt1};
  __property   short           pt2 = {read = get_pt2, write = set_pt2};
  __property   long            textPos = {read = get_textPos, write = set_textPos};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   long            shelfDir = {read = get_shelfDir, write = set_shelfDir};
};
typedef ksRDimDrawingParamDispT<ksRDimDrawingParam> ksRDimDrawingParamDisp;

// *********************************************************************//
// DispIntf:  ksRDimSourceParam
// Flags:     (4096) Dispatchable
// GUID:      {2A4D4545-95B3-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksRDimSourceParamDispT : public TAutoDriver<ksRDimSourceParam>
{
public:
  ksRDimSourceParamDispT(){}

  ksRDimSourceParamDispT(ksRDimSourceParam *pintf)
  {
    TAutoDriver<ksRDimSourceParam>::Bind(pintf, false);
  }

  ksRDimSourceParamDispT(ksRDimSourceParamPtr pintf)
  {
    TAutoDriver<ksRDimSourceParam>::Bind(pintf, true);
  }

  ksRDimSourceParamDispT& operator=(ksRDimSourceParam *pintf)
  {
    TAutoDriver<ksRDimSourceParam>::Bind(pintf, false);
    return *this;
  }

  ksRDimSourceParamDispT& operator=(ksRDimSourceParamPtr pintf)
  {
    TAutoDriver<ksRDimSourceParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_RDimSourceParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_RDimSourceParam);
  }

  void            __fastcall set_xc(double Value);
  double          __fastcall get_xc();
  void            __fastcall set_yc(double Value);
  double          __fastcall get_yc();
  void            __fastcall set_rad(double Value);
  double          __fastcall get_rad();
  TOLEBOOL        __fastcall Init();

  __property   double          xc = {read = get_xc, write = set_xc};
  __property   double          yc = {read = get_yc, write = set_yc};
  __property   double          rad = {read = get_rad, write = set_rad};
};
typedef ksRDimSourceParamDispT<ksRDimSourceParam> ksRDimSourceParamDisp;

// *********************************************************************//
// DispIntf:  ksRDimParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F81-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksRDimParamDispT : public TAutoDriver<ksRDimParam>
{
public:
  ksRDimParamDispT(){}

  ksRDimParamDispT(ksRDimParam *pintf)
  {
    TAutoDriver<ksRDimParam>::Bind(pintf, false);
  }

  ksRDimParamDispT(ksRDimParamPtr pintf)
  {
    TAutoDriver<ksRDimParam>::Bind(pintf, true);
  }

  ksRDimParamDispT& operator=(ksRDimParam *pintf)
  {
    TAutoDriver<ksRDimParam>::Bind(pintf, false);
    return *this;
  }

  ksRDimParamDispT& operator=(ksRDimParamPtr pintf)
  {
    TAutoDriver<ksRDimParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_RDimParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_RDimParam);
  }

  LPDISPATCH      __fastcall GetTPar();
  TOLEBOOL        __fastcall SetTPar(LPDISPATCH val);
  LPDISPATCH      __fastcall GetDPar();
  TOLEBOOL        __fastcall SetDPar(LPDISPATCH val);
  LPDISPATCH      __fastcall GetSPar();
  TOLEBOOL        __fastcall SetSPar(LPDISPATCH val);

};
typedef ksRDimParamDispT<ksRDimParam> ksRDimParamDisp;

// *********************************************************************//
// DispIntf:  ksLineSegParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F84-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksLineSegParamDispT : public TAutoDriver<ksLineSegParam>
{
public:
  ksLineSegParamDispT(){}

  ksLineSegParamDispT(ksLineSegParam *pintf)
  {
    TAutoDriver<ksLineSegParam>::Bind(pintf, false);
  }

  ksLineSegParamDispT(ksLineSegParamPtr pintf)
  {
    TAutoDriver<ksLineSegParam>::Bind(pintf, true);
  }

  ksLineSegParamDispT& operator=(ksLineSegParam *pintf)
  {
    TAutoDriver<ksLineSegParam>::Bind(pintf, false);
    return *this;
  }

  ksLineSegParamDispT& operator=(ksLineSegParamPtr pintf)
  {
    TAutoDriver<ksLineSegParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_LineSegParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_LineSegParam);
  }

  void            __fastcall set_x1(double Value);
  double          __fastcall get_x1();
  void            __fastcall set_y1(double Value);
  double          __fastcall get_y1();
  void            __fastcall set_x2(double Value);
  double          __fastcall get_x2();
  void            __fastcall set_y2(double Value);
  double          __fastcall get_y2();
  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  TOLEBOOL        __fastcall Init();

  __property   double          x1 = {read = get_x1, write = set_x1};
  __property   double          y1 = {read = get_y1, write = set_y1};
  __property   double          x2 = {read = get_x2, write = set_x2};
  __property   double          y2 = {read = get_y2, write = set_y2};
  __property   long            style = {read = get_style, write = set_style};
};
typedef ksLineSegParamDispT<ksLineSegParam> ksLineSegParamDisp;

// *********************************************************************//
// DispIntf:  ksCircleParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F87-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksCircleParamDispT : public TAutoDriver<ksCircleParam>
{
public:
  ksCircleParamDispT(){}

  ksCircleParamDispT(ksCircleParam *pintf)
  {
    TAutoDriver<ksCircleParam>::Bind(pintf, false);
  }

  ksCircleParamDispT(ksCircleParamPtr pintf)
  {
    TAutoDriver<ksCircleParam>::Bind(pintf, true);
  }

  ksCircleParamDispT& operator=(ksCircleParam *pintf)
  {
    TAutoDriver<ksCircleParam>::Bind(pintf, false);
    return *this;
  }

  ksCircleParamDispT& operator=(ksCircleParamPtr pintf)
  {
    TAutoDriver<ksCircleParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_CircleParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_CircleParam);
  }

  void            __fastcall set_xc(double Value);
  double          __fastcall get_xc();
  void            __fastcall set_yc(double Value);
  double          __fastcall get_yc();
  void            __fastcall set_rad(double Value);
  double          __fastcall get_rad();
  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  TOLEBOOL        __fastcall Init();

  __property   double          xc = {read = get_xc, write = set_xc};
  __property   double          yc = {read = get_yc, write = set_yc};
  __property   double          rad = {read = get_rad, write = set_rad};
  __property   long            style = {read = get_style, write = set_style};
};
typedef ksCircleParamDispT<ksCircleParam> ksCircleParamDisp;

// *********************************************************************//
// DispIntf:  ksArcByAngleParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F8A-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksArcByAngleParamDispT : public TAutoDriver<ksArcByAngleParam>
{
public:
  ksArcByAngleParamDispT(){}

  ksArcByAngleParamDispT(ksArcByAngleParam *pintf)
  {
    TAutoDriver<ksArcByAngleParam>::Bind(pintf, false);
  }

  ksArcByAngleParamDispT(ksArcByAngleParamPtr pintf)
  {
    TAutoDriver<ksArcByAngleParam>::Bind(pintf, true);
  }

  ksArcByAngleParamDispT& operator=(ksArcByAngleParam *pintf)
  {
    TAutoDriver<ksArcByAngleParam>::Bind(pintf, false);
    return *this;
  }

  ksArcByAngleParamDispT& operator=(ksArcByAngleParamPtr pintf)
  {
    TAutoDriver<ksArcByAngleParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ArcByAngleParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ArcByAngleParam);
  }

  void            __fastcall set_xc(double Value);
  double          __fastcall get_xc();
  void            __fastcall set_yc(double Value);
  double          __fastcall get_yc();
  void            __fastcall set_rad(double Value);
  double          __fastcall get_rad();
  void            __fastcall set_ang1(double Value);
  double          __fastcall get_ang1();
  void            __fastcall set_ang2(double Value);
  double          __fastcall get_ang2();
  void            __fastcall set_dir(short Value);
  short           __fastcall get_dir();
  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  TOLEBOOL        __fastcall Init();

  __property   double          xc = {read = get_xc, write = set_xc};
  __property   double          yc = {read = get_yc, write = set_yc};
  __property   double          rad = {read = get_rad, write = set_rad};
  __property   double          ang1 = {read = get_ang1, write = set_ang1};
  __property   double          ang2 = {read = get_ang2, write = set_ang2};
  __property   short           dir = {read = get_dir, write = set_dir};
  __property   long            style = {read = get_style, write = set_style};
};
typedef ksArcByAngleParamDispT<ksArcByAngleParam> ksArcByAngleParamDisp;

// *********************************************************************//
// DispIntf:  ksArcByPointParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F8D-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksArcByPointParamDispT : public TAutoDriver<ksArcByPointParam>
{
public:
  ksArcByPointParamDispT(){}

  ksArcByPointParamDispT(ksArcByPointParam *pintf)
  {
    TAutoDriver<ksArcByPointParam>::Bind(pintf, false);
  }

  ksArcByPointParamDispT(ksArcByPointParamPtr pintf)
  {
    TAutoDriver<ksArcByPointParam>::Bind(pintf, true);
  }

  ksArcByPointParamDispT& operator=(ksArcByPointParam *pintf)
  {
    TAutoDriver<ksArcByPointParam>::Bind(pintf, false);
    return *this;
  }

  ksArcByPointParamDispT& operator=(ksArcByPointParamPtr pintf)
  {
    TAutoDriver<ksArcByPointParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ArcByPointParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ArcByPointParam);
  }

  void            __fastcall set_xc(double Value);
  double          __fastcall get_xc();
  void            __fastcall set_yc(double Value);
  double          __fastcall get_yc();
  void            __fastcall set_rad(double Value);
  double          __fastcall get_rad();
  void            __fastcall set_x1(double Value);
  double          __fastcall get_x1();
  void            __fastcall set_y1(double Value);
  double          __fastcall get_y1();
  void            __fastcall set_x2(double Value);
  double          __fastcall get_x2();
  void            __fastcall set_y2(double Value);
  double          __fastcall get_y2();
  void            __fastcall set_dir(short Value);
  short           __fastcall get_dir();
  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  TOLEBOOL        __fastcall Init();

  __property   double          xc = {read = get_xc, write = set_xc};
  __property   double          yc = {read = get_yc, write = set_yc};
  __property   double          rad = {read = get_rad, write = set_rad};
  __property   double          x1 = {read = get_x1, write = set_x1};
  __property   double          y1 = {read = get_y1, write = set_y1};
  __property   double          x2 = {read = get_x2, write = set_x2};
  __property   double          y2 = {read = get_y2, write = set_y2};
  __property   short           dir = {read = get_dir, write = set_dir};
  __property   long            style = {read = get_style, write = set_style};
};
typedef ksArcByPointParamDispT<ksArcByPointParam> ksArcByPointParamDisp;

// *********************************************************************//
// DispIntf:  ksPointParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F90-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksPointParamDispT : public TAutoDriver<ksPointParam>
{
public:
  ksPointParamDispT(){}

  ksPointParamDispT(ksPointParam *pintf)
  {
    TAutoDriver<ksPointParam>::Bind(pintf, false);
  }

  ksPointParamDispT(ksPointParamPtr pintf)
  {
    TAutoDriver<ksPointParam>::Bind(pintf, true);
  }

  ksPointParamDispT& operator=(ksPointParam *pintf)
  {
    TAutoDriver<ksPointParam>::Bind(pintf, false);
    return *this;
  }

  ksPointParamDispT& operator=(ksPointParamPtr pintf)
  {
    TAutoDriver<ksPointParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_PointParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_PointParam);
  }

  void            __fastcall set_x(double Value);
  double          __fastcall get_x();
  void            __fastcall set_y(double Value);
  double          __fastcall get_y();
  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  TOLEBOOL        __fastcall Init();

  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   long            style = {read = get_style, write = set_style};
};
typedef ksPointParamDispT<ksPointParam> ksPointParamDisp;

// *********************************************************************//
// DispIntf:  ksHatchParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F93-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksHatchParamDispT : public TAutoDriver<ksHatchParam>
{
public:
  ksHatchParamDispT(){}

  ksHatchParamDispT(ksHatchParam *pintf)
  {
    TAutoDriver<ksHatchParam>::Bind(pintf, false);
  }

  ksHatchParamDispT(ksHatchParamPtr pintf)
  {
    TAutoDriver<ksHatchParam>::Bind(pintf, true);
  }

  ksHatchParamDispT& operator=(ksHatchParam *pintf)
  {
    TAutoDriver<ksHatchParam>::Bind(pintf, false);
    return *this;
  }

  ksHatchParamDispT& operator=(ksHatchParamPtr pintf)
  {
    TAutoDriver<ksHatchParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_HatchParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_HatchParam);
  }

  void            __fastcall set_x(double Value);
  double          __fastcall get_x();
  void            __fastcall set_y(double Value);
  double          __fastcall get_y();
  void            __fastcall set_step(double Value);
  double          __fastcall get_step();
  void            __fastcall set_ang(double Value);
  double          __fastcall get_ang();
  void            __fastcall set_width(double Value);
  double          __fastcall get_width();
  void            __fastcall set_boundaries(long Value);
  long            __fastcall get_boundaries();
  void            __fastcall set_color(long Value);
  long            __fastcall get_color();
  void            __fastcall set_sheeting(short Value);
  short           __fastcall get_sheeting();
  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  TOLEBOOL        __fastcall Init();

  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   double          step = {read = get_step, write = set_step};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   double          width = {read = get_width, write = set_width};
  __property   long            boundaries = {read = get_boundaries, write = set_boundaries};
  __property   long            color = {read = get_color, write = set_color};
  __property   short           sheeting = {read = get_sheeting, write = set_sheeting};
  __property   long            style = {read = get_style, write = set_style};
};
typedef ksHatchParamDispT<ksHatchParam> ksHatchParamDisp;

// *********************************************************************//
// DispIntf:  ksTextParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F96-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksTextParamDispT : public TAutoDriver<ksTextParam>
{
public:
  ksTextParamDispT(){}

  ksTextParamDispT(ksTextParam *pintf)
  {
    TAutoDriver<ksTextParam>::Bind(pintf, false);
  }

  ksTextParamDispT(ksTextParamPtr pintf)
  {
    TAutoDriver<ksTextParam>::Bind(pintf, true);
  }

  ksTextParamDispT& operator=(ksTextParam *pintf)
  {
    TAutoDriver<ksTextParam>::Bind(pintf, false);
    return *this;
  }

  ksTextParamDispT& operator=(ksTextParamPtr pintf)
  {
    TAutoDriver<ksTextParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_TextParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_TextParam);
  }

  TOLEBOOL        __fastcall Init();
  LPDISPATCH      __fastcall GetParagraphParam();
  TOLEBOOL        __fastcall SetParagraphParam(LPDISPATCH val);
  LPDISPATCH      __fastcall GetTextLineArr();
  TOLEBOOL        __fastcall SetTextLineArr(LPDISPATCH val);

};
typedef ksTextParamDispT<ksTextParam> ksTextParamDisp;

// *********************************************************************//
// DispIntf:  ksNurbsPointParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F99-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksNurbsPointParamDispT : public TAutoDriver<ksNurbsPointParam>
{
public:
  ksNurbsPointParamDispT(){}

  ksNurbsPointParamDispT(ksNurbsPointParam *pintf)
  {
    TAutoDriver<ksNurbsPointParam>::Bind(pintf, false);
  }

  ksNurbsPointParamDispT(ksNurbsPointParamPtr pintf)
  {
    TAutoDriver<ksNurbsPointParam>::Bind(pintf, true);
  }

  ksNurbsPointParamDispT& operator=(ksNurbsPointParam *pintf)
  {
    TAutoDriver<ksNurbsPointParam>::Bind(pintf, false);
    return *this;
  }

  ksNurbsPointParamDispT& operator=(ksNurbsPointParamPtr pintf)
  {
    TAutoDriver<ksNurbsPointParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_NurbsPointParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_NurbsPointParam);
  }

  void            __fastcall set_x(double Value);
  double          __fastcall get_x();
  void            __fastcall set_y(double Value);
  double          __fastcall get_y();
  void            __fastcall set_weight(double Value);
  double          __fastcall get_weight();
  TOLEBOOL        __fastcall Init();

  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   double          weight = {read = get_weight, write = set_weight};
};
typedef ksNurbsPointParamDispT<ksNurbsPointParam> ksNurbsPointParamDisp;

// *********************************************************************//
// DispIntf:  ksDoubleValue
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F9C-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksDoubleValueDispT : public TAutoDriver<ksDoubleValue>
{
public:
  ksDoubleValueDispT(){}

  ksDoubleValueDispT(ksDoubleValue *pintf)
  {
    TAutoDriver<ksDoubleValue>::Bind(pintf, false);
  }

  ksDoubleValueDispT(ksDoubleValuePtr pintf)
  {
    TAutoDriver<ksDoubleValue>::Bind(pintf, true);
  }

  ksDoubleValueDispT& operator=(ksDoubleValue *pintf)
  {
    TAutoDriver<ksDoubleValue>::Bind(pintf, false);
    return *this;
  }

  ksDoubleValueDispT& operator=(ksDoubleValuePtr pintf)
  {
    TAutoDriver<ksDoubleValue>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_DoubleValue));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_DoubleValue);
  }

  void            __fastcall set_value(double Value);
  double          __fastcall get_value();
  TOLEBOOL        __fastcall Init();

  __property   double          value = {read = get_value, write = set_value};
};
typedef ksDoubleValueDispT<ksDoubleValue> ksDoubleValueDisp;

// *********************************************************************//
// DispIntf:  ksNurbsParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F9F-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksNurbsParamDispT : public TAutoDriver<ksNurbsParam>
{
public:
  ksNurbsParamDispT(){}

  ksNurbsParamDispT(ksNurbsParam *pintf)
  {
    TAutoDriver<ksNurbsParam>::Bind(pintf, false);
  }

  ksNurbsParamDispT(ksNurbsParamPtr pintf)
  {
    TAutoDriver<ksNurbsParam>::Bind(pintf, true);
  }

  ksNurbsParamDispT& operator=(ksNurbsParam *pintf)
  {
    TAutoDriver<ksNurbsParam>::Bind(pintf, false);
    return *this;
  }

  ksNurbsParamDispT& operator=(ksNurbsParamPtr pintf)
  {
    TAutoDriver<ksNurbsParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_NurbsParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_NurbsParam);
  }

  void            __fastcall set_degree(short Value);
  short           __fastcall get_degree();
  void            __fastcall set_close(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_close();
  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  TOLEBOOL        __fastcall get_periodic();
  TOLEBOOL        __fastcall Init();
  LPDISPATCH      __fastcall GetPPoint();
  TOLEBOOL        __fastcall SetPPoint(LPDISPATCH val);
  LPDISPATCH      __fastcall GetPKnot();
  TOLEBOOL        __fastcall SetPKnot(LPDISPATCH val);

  __property   short           degree = {read = get_degree, write = set_degree};
  __property   TOLEBOOL        close = {read = get_close, write = set_close};
  __property   long            style = {read = get_style, write = set_style};
  __property   TOLEBOOL        periodic = {read = get_periodic};
};
typedef ksNurbsParamDispT<ksNurbsParam> ksNurbsParamDisp;

// *********************************************************************//
// DispIntf:  ksConicArcParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FA2-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksConicArcParamDispT : public TAutoDriver<ksConicArcParam>
{
public:
  ksConicArcParamDispT(){}

  ksConicArcParamDispT(ksConicArcParam *pintf)
  {
    TAutoDriver<ksConicArcParam>::Bind(pintf, false);
  }

  ksConicArcParamDispT(ksConicArcParamPtr pintf)
  {
    TAutoDriver<ksConicArcParam>::Bind(pintf, true);
  }

  ksConicArcParamDispT& operator=(ksConicArcParam *pintf)
  {
    TAutoDriver<ksConicArcParam>::Bind(pintf, false);
    return *this;
  }

  ksConicArcParamDispT& operator=(ksConicArcParamPtr pintf)
  {
    TAutoDriver<ksConicArcParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ConicArcParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ConicArcParam);
  }

  void            __fastcall set_A(double Value);
  double          __fastcall get_A();
  void            __fastcall set_B(double Value);
  double          __fastcall get_B();
  void            __fastcall set_C(double Value);
  double          __fastcall get_C();
  void            __fastcall set_D(double Value);
  double          __fastcall get_D();
  void            __fastcall set_E(double Value);
  double          __fastcall get_E();
  void            __fastcall set_F(double Value);
  double          __fastcall get_F();
  void            __fastcall set_x1(double Value);
  double          __fastcall get_x1();
  void            __fastcall set_y1(double Value);
  double          __fastcall get_y1();
  void            __fastcall set_x2(double Value);
  double          __fastcall get_x2();
  void            __fastcall set_y2(double Value);
  double          __fastcall get_y2();
  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  TOLEBOOL        __fastcall Init();

  __property   double          A = {read = get_A, write = set_A};
  __property   double          B = {read = get_B, write = set_B};
  __property   double          C = {read = get_C, write = set_C};
  __property   double          D = {read = get_D, write = set_D};
  __property   double          E = {read = get_E, write = set_E};
  __property   double          F = {read = get_F, write = set_F};
  __property   double          x1 = {read = get_x1, write = set_x1};
  __property   double          y1 = {read = get_y1, write = set_y1};
  __property   double          x2 = {read = get_x2, write = set_x2};
  __property   double          y2 = {read = get_y2, write = set_y2};
  __property   long            style = {read = get_style, write = set_style};
};
typedef ksConicArcParamDispT<ksConicArcParam> ksConicArcParamDisp;

// *********************************************************************//
// DispIntf:  ksCentreParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FA5-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksCentreParamDispT : public TAutoDriver<ksCentreParam>
{
public:
  ksCentreParamDispT(){}

  ksCentreParamDispT(ksCentreParam *pintf)
  {
    TAutoDriver<ksCentreParam>::Bind(pintf, false);
  }

  ksCentreParamDispT(ksCentreParamPtr pintf)
  {
    TAutoDriver<ksCentreParam>::Bind(pintf, true);
  }

  ksCentreParamDispT& operator=(ksCentreParam *pintf)
  {
    TAutoDriver<ksCentreParam>::Bind(pintf, false);
    return *this;
  }

  ksCentreParamDispT& operator=(ksCentreParamPtr pintf)
  {
    TAutoDriver<ksCentreParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_CentreParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_CentreParam);
  }

  void            __fastcall set_baseCurve(long Value);
  long            __fastcall get_baseCurve();
  void            __fastcall set_x(double Value);
  double          __fastcall get_x();
  void            __fastcall set_y(double Value);
  double          __fastcall get_y();
  void            __fastcall set_angle(double Value);
  double          __fastcall get_angle();
  void            __fastcall set_type(short Value);
  short           __fastcall get_type();
  void            __fastcall set_standXpTail(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_standXpTail();
  void            __fastcall set_standXmTail(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_standXmTail();
  void            __fastcall set_standYpTail(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_standYpTail();
  void            __fastcall set_standYmTail(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_standYmTail();
  void            __fastcall set_lenXpTail(double Value);
  double          __fastcall get_lenXpTail();
  void            __fastcall set_lenXmTail(double Value);
  double          __fastcall get_lenXmTail();
  void            __fastcall set_lenYpTail(double Value);
  double          __fastcall get_lenYpTail();
  void            __fastcall set_lenYmTail(double Value);
  double          __fastcall get_lenYmTail();
  TOLEBOOL        __fastcall Init();

  __property   long            baseCurve = {read = get_baseCurve, write = set_baseCurve};
  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   double          angle = {read = get_angle, write = set_angle};
  __property   short           type = {read = get_type, write = set_type};
  __property   TOLEBOOL        standXpTail = {read = get_standXpTail, write = set_standXpTail};
  __property   TOLEBOOL        standXmTail = {read = get_standXmTail, write = set_standXmTail};
  __property   TOLEBOOL        standYpTail = {read = get_standYpTail, write = set_standYpTail};
  __property   TOLEBOOL        standYmTail = {read = get_standYmTail, write = set_standYmTail};
  __property   double          lenXpTail = {read = get_lenXpTail, write = set_lenXpTail};
  __property   double          lenXmTail = {read = get_lenXmTail, write = set_lenXmTail};
  __property   double          lenYpTail = {read = get_lenYpTail, write = set_lenYpTail};
  __property   double          lenYmTail = {read = get_lenYmTail, write = set_lenYmTail};
};
typedef ksCentreParamDispT<ksCentreParam> ksCentreParamDisp;

// *********************************************************************//
// DispIntf:  ksPlacementParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FA8-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksPlacementParamDispT : public TAutoDriver<ksPlacementParam>
{
public:
  ksPlacementParamDispT(){}

  ksPlacementParamDispT(ksPlacementParam *pintf)
  {
    TAutoDriver<ksPlacementParam>::Bind(pintf, false);
  }

  ksPlacementParamDispT(ksPlacementParamPtr pintf)
  {
    TAutoDriver<ksPlacementParam>::Bind(pintf, true);
  }

  ksPlacementParamDispT& operator=(ksPlacementParam *pintf)
  {
    TAutoDriver<ksPlacementParam>::Bind(pintf, false);
    return *this;
  }

  ksPlacementParamDispT& operator=(ksPlacementParamPtr pintf)
  {
    TAutoDriver<ksPlacementParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_PlacementParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_PlacementParam);
  }

  void            __fastcall set_xBase(double Value);
  double          __fastcall get_xBase();
  void            __fastcall set_yBase(double Value);
  double          __fastcall get_yBase();
  void            __fastcall set_scale_(double Value);
  double          __fastcall get_scale_();
  void            __fastcall set_angle(double Value);
  double          __fastcall get_angle();
  TOLEBOOL        __fastcall Init();

  __property   double          xBase = {read = get_xBase, write = set_xBase};
  __property   double          yBase = {read = get_yBase, write = set_yBase};
  __property   double          scale_ = {read = get_scale_, write = set_scale_};
  __property   double          angle = {read = get_angle, write = set_angle};
};
typedef ksPlacementParamDispT<ksPlacementParam> ksPlacementParamDisp;

// *********************************************************************//
// DispIntf:  ksRasterParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FAB-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksRasterParamDispT : public TAutoDriver<ksRasterParam>
{
public:
  ksRasterParamDispT(){}

  ksRasterParamDispT(ksRasterParam *pintf)
  {
    TAutoDriver<ksRasterParam>::Bind(pintf, false);
  }

  ksRasterParamDispT(ksRasterParamPtr pintf)
  {
    TAutoDriver<ksRasterParam>::Bind(pintf, true);
  }

  ksRasterParamDispT& operator=(ksRasterParam *pintf)
  {
    TAutoDriver<ksRasterParam>::Bind(pintf, false);
    return *this;
  }

  ksRasterParamDispT& operator=(ksRasterParamPtr pintf)
  {
    TAutoDriver<ksRasterParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_RasterParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_RasterParam);
  }

  void            __fastcall set_fileName(BSTR Value);
  BSTR            __fastcall get_fileName();
  void            __fastcall set_embeded(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_embeded();
  TOLEBOOL        __fastcall Init();
  LPDISPATCH      __fastcall GetPlace();
  TOLEBOOL        __fastcall SetPlace(LPDISPATCH val);

  __property   BSTR            fileName = {read = get_fileName, write = set_fileName};
  __property   TOLEBOOL        embeded = {read = get_embeded, write = set_embeded};
};
typedef ksRasterParamDispT<ksRasterParam> ksRasterParamDisp;

// *********************************************************************//
// DispIntf:  ksPolylineParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FAE-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksPolylineParamDispT : public TAutoDriver<ksPolylineParam>
{
public:
  ksPolylineParamDispT(){}

  ksPolylineParamDispT(ksPolylineParam *pintf)
  {
    TAutoDriver<ksPolylineParam>::Bind(pintf, false);
  }

  ksPolylineParamDispT(ksPolylineParamPtr pintf)
  {
    TAutoDriver<ksPolylineParam>::Bind(pintf, true);
  }

  ksPolylineParamDispT& operator=(ksPolylineParam *pintf)
  {
    TAutoDriver<ksPolylineParam>::Bind(pintf, false);
    return *this;
  }

  ksPolylineParamDispT& operator=(ksPolylineParamPtr pintf)
  {
    TAutoDriver<ksPolylineParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_PolylineParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_PolylineParam);
  }

  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  void            __fastcall set_closed(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_closed();
  TOLEBOOL        __fastcall Init();
  LPDISPATCH      __fastcall GetpMathPoint();
  TOLEBOOL        __fastcall SetpMathPoint(LPDISPATCH val);

  __property   long            style = {read = get_style, write = set_style};
  __property   TOLEBOOL        closed = {read = get_closed, write = set_closed};
};
typedef ksPolylineParamDispT<ksPolylineParam> ksPolylineParamDisp;

// *********************************************************************//
// DispIntf:  ksInsertFragmentParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FB1-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksInsertFragmentParamDispT : public TAutoDriver<ksInsertFragmentParam>
{
public:
  ksInsertFragmentParamDispT(){}

  ksInsertFragmentParamDispT(ksInsertFragmentParam *pintf)
  {
    TAutoDriver<ksInsertFragmentParam>::Bind(pintf, false);
  }

  ksInsertFragmentParamDispT(ksInsertFragmentParamPtr pintf)
  {
    TAutoDriver<ksInsertFragmentParam>::Bind(pintf, true);
  }

  ksInsertFragmentParamDispT& operator=(ksInsertFragmentParam *pintf)
  {
    TAutoDriver<ksInsertFragmentParam>::Bind(pintf, false);
    return *this;
  }

  ksInsertFragmentParamDispT& operator=(ksInsertFragmentParamPtr pintf)
  {
    TAutoDriver<ksInsertFragmentParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_InsertFragmentParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_InsertFragmentParam);
  }

  void            __fastcall set_fileName(BSTR Value);
  BSTR            __fastcall get_fileName();
  void            __fastcall set_comment(BSTR Value);
  BSTR            __fastcall get_comment();
  void            __fastcall set_insertType(short Value);
  short           __fastcall get_insertType();
  void            __fastcall set_multiLayer(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_multiLayer();
  TOLEBOOL        __fastcall Init();
  LPDISPATCH      __fastcall GetPlace();
  TOLEBOOL        __fastcall SetPlace(LPDISPATCH val);

  __property   BSTR            fileName = {read = get_fileName, write = set_fileName};
  __property   BSTR            comment = {read = get_comment, write = set_comment};
  __property   short           insertType = {read = get_insertType, write = set_insertType};
  __property   TOLEBOOL        multiLayer = {read = get_multiLayer, write = set_multiLayer};
};
typedef ksInsertFragmentParamDispT<ksInsertFragmentParam> ksInsertFragmentParamDisp;

// *********************************************************************//
// DispIntf:  ksViewParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FB4-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksViewParamDispT : public TAutoDriver<ksViewParam>
{
public:
  ksViewParamDispT(){}

  ksViewParamDispT(ksViewParam *pintf)
  {
    TAutoDriver<ksViewParam>::Bind(pintf, false);
  }

  ksViewParamDispT(ksViewParamPtr pintf)
  {
    TAutoDriver<ksViewParam>::Bind(pintf, true);
  }

  ksViewParamDispT& operator=(ksViewParam *pintf)
  {
    TAutoDriver<ksViewParam>::Bind(pintf, false);
    return *this;
  }

  ksViewParamDispT& operator=(ksViewParamPtr pintf)
  {
    TAutoDriver<ksViewParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ViewParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ViewParam);
  }

  void            __fastcall set_x(double Value);
  double          __fastcall get_x();
  void            __fastcall set_y(double Value);
  double          __fastcall get_y();
  void            __fastcall set_angle(double Value);
  double          __fastcall get_angle();
  void            __fastcall set_scale_(double Value);
  double          __fastcall get_scale_();
  void            __fastcall set_color(long Value);
  long            __fastcall get_color();
  void            __fastcall set_state(short Value);
  short           __fastcall get_state();
  void            __fastcall set_name(BSTR Value);
  BSTR            __fastcall get_name();
  TOLEBOOL        __fastcall Init();

  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   double          angle = {read = get_angle, write = set_angle};
  __property   double          scale_ = {read = get_scale_, write = set_scale_};
  __property   long            color = {read = get_color, write = set_color};
  __property   short           state = {read = get_state, write = set_state};
  __property   BSTR            name = {read = get_name, write = set_name};
};
typedef ksViewParamDispT<ksViewParam> ksViewParamDisp;

// *********************************************************************//
// DispIntf:  ksLBreakDimSource
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FB7-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksLBreakDimSourceDispT : public TAutoDriver<ksLBreakDimSource>
{
public:
  ksLBreakDimSourceDispT(){}

  ksLBreakDimSourceDispT(ksLBreakDimSource *pintf)
  {
    TAutoDriver<ksLBreakDimSource>::Bind(pintf, false);
  }

  ksLBreakDimSourceDispT(ksLBreakDimSourcePtr pintf)
  {
    TAutoDriver<ksLBreakDimSource>::Bind(pintf, true);
  }

  ksLBreakDimSourceDispT& operator=(ksLBreakDimSource *pintf)
  {
    TAutoDriver<ksLBreakDimSource>::Bind(pintf, false);
    return *this;
  }

  ksLBreakDimSourceDispT& operator=(ksLBreakDimSourcePtr pintf)
  {
    TAutoDriver<ksLBreakDimSource>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_LBreakDimSource));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_LBreakDimSource);
  }

  void            __fastcall set_x1(double Value);
  double          __fastcall get_x1();
  void            __fastcall set_y1(double Value);
  double          __fastcall get_y1();
  void            __fastcall set_x2(double Value);
  double          __fastcall get_x2();
  void            __fastcall set_y2(double Value);
  double          __fastcall get_y2();
  void            __fastcall set_x3(double Value);
  double          __fastcall get_x3();
  void            __fastcall set_y3(double Value);
  double          __fastcall get_y3();
  TOLEBOOL        __fastcall Init();

  __property   double          x1 = {read = get_x1, write = set_x1};
  __property   double          y1 = {read = get_y1, write = set_y1};
  __property   double          x2 = {read = get_x2, write = set_x2};
  __property   double          y2 = {read = get_y2, write = set_y2};
  __property   double          x3 = {read = get_x3, write = set_x3};
  __property   double          y3 = {read = get_y3, write = set_y3};
};
typedef ksLBreakDimSourceDispT<ksLBreakDimSource> ksLBreakDimSourceDisp;

// *********************************************************************//
// DispIntf:  ksBreakDimDrawing
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FBA-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksBreakDimDrawingDispT : public TAutoDriver<ksBreakDimDrawing>
{
public:
  ksBreakDimDrawingDispT(){}

  ksBreakDimDrawingDispT(ksBreakDimDrawing *pintf)
  {
    TAutoDriver<ksBreakDimDrawing>::Bind(pintf, false);
  }

  ksBreakDimDrawingDispT(ksBreakDimDrawingPtr pintf)
  {
    TAutoDriver<ksBreakDimDrawing>::Bind(pintf, true);
  }

  ksBreakDimDrawingDispT& operator=(ksBreakDimDrawing *pintf)
  {
    TAutoDriver<ksBreakDimDrawing>::Bind(pintf, false);
    return *this;
  }

  ksBreakDimDrawingDispT& operator=(ksBreakDimDrawingPtr pintf)
  {
    TAutoDriver<ksBreakDimDrawing>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_BreakDimDrawing));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_BreakDimDrawing);
  }

  void            __fastcall set_pl(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_pl();
  void            __fastcall set_pt(short Value);
  short           __fastcall get_pt();
  void            __fastcall set_textPos(long Value);
  long            __fastcall get_textPos();
  void            __fastcall set_shelfDir(long Value);
  long            __fastcall get_shelfDir();
  void            __fastcall set_angle(double Value);
  double          __fastcall get_angle();
  void            __fastcall set_length(long Value);
  long            __fastcall get_length();
  TOLEBOOL        __fastcall Init();

  __property   TOLEBOOL        pl = {read = get_pl, write = set_pl};
  __property   short           pt = {read = get_pt, write = set_pt};
  __property   long            textPos = {read = get_textPos, write = set_textPos};
  __property   long            shelfDir = {read = get_shelfDir, write = set_shelfDir};
  __property   double          angle = {read = get_angle, write = set_angle};
  __property   long            length = {read = get_length, write = set_length};
};
typedef ksBreakDimDrawingDispT<ksBreakDimDrawing> ksBreakDimDrawingDisp;

// *********************************************************************//
// DispIntf:  ksLBreakDimParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FBD-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksLBreakDimParamDispT : public TAutoDriver<ksLBreakDimParam>
{
public:
  ksLBreakDimParamDispT(){}

  ksLBreakDimParamDispT(ksLBreakDimParam *pintf)
  {
    TAutoDriver<ksLBreakDimParam>::Bind(pintf, false);
  }

  ksLBreakDimParamDispT(ksLBreakDimParamPtr pintf)
  {
    TAutoDriver<ksLBreakDimParam>::Bind(pintf, true);
  }

  ksLBreakDimParamDispT& operator=(ksLBreakDimParam *pintf)
  {
    TAutoDriver<ksLBreakDimParam>::Bind(pintf, false);
    return *this;
  }

  ksLBreakDimParamDispT& operator=(ksLBreakDimParamPtr pintf)
  {
    TAutoDriver<ksLBreakDimParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_LBreakDimParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_LBreakDimParam);
  }

  LPDISPATCH      __fastcall GetTPar();
  TOLEBOOL        __fastcall SetTPar(LPDISPATCH val);
  LPDISPATCH      __fastcall GetDPar();
  TOLEBOOL        __fastcall SetDPar(LPDISPATCH val);
  LPDISPATCH      __fastcall GetSPar();
  TOLEBOOL        __fastcall SetSPar(LPDISPATCH val);

};
typedef ksLBreakDimParamDispT<ksLBreakDimParam> ksLBreakDimParamDisp;

// *********************************************************************//
// DispIntf:  ksABreakDimParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FC0-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksABreakDimParamDispT : public TAutoDriver<ksABreakDimParam>
{
public:
  ksABreakDimParamDispT(){}

  ksABreakDimParamDispT(ksABreakDimParam *pintf)
  {
    TAutoDriver<ksABreakDimParam>::Bind(pintf, false);
  }

  ksABreakDimParamDispT(ksABreakDimParamPtr pintf)
  {
    TAutoDriver<ksABreakDimParam>::Bind(pintf, true);
  }

  ksABreakDimParamDispT& operator=(ksABreakDimParam *pintf)
  {
    TAutoDriver<ksABreakDimParam>::Bind(pintf, false);
    return *this;
  }

  ksABreakDimParamDispT& operator=(ksABreakDimParamPtr pintf)
  {
    TAutoDriver<ksABreakDimParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ABreakDimParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ABreakDimParam);
  }

  LPDISPATCH      __fastcall GetTPar();
  TOLEBOOL        __fastcall SetTPar(LPDISPATCH val);
  LPDISPATCH      __fastcall GetDPar();
  TOLEBOOL        __fastcall SetDPar(LPDISPATCH val);
  LPDISPATCH      __fastcall GetSPar();
  TOLEBOOL        __fastcall SetSPar(LPDISPATCH val);

};
typedef ksABreakDimParamDispT<ksABreakDimParam> ksABreakDimParamDisp;

// *********************************************************************//
// DispIntf:  ksInsertFragmentParamEx
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FC3-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksInsertFragmentParamExDispT : public TAutoDriver<ksInsertFragmentParamEx>
{
public:
  ksInsertFragmentParamExDispT(){}

  ksInsertFragmentParamExDispT(ksInsertFragmentParamEx *pintf)
  {
    TAutoDriver<ksInsertFragmentParamEx>::Bind(pintf, false);
  }

  ksInsertFragmentParamExDispT(ksInsertFragmentParamExPtr pintf)
  {
    TAutoDriver<ksInsertFragmentParamEx>::Bind(pintf, true);
  }

  ksInsertFragmentParamExDispT& operator=(ksInsertFragmentParamEx *pintf)
  {
    TAutoDriver<ksInsertFragmentParamEx>::Bind(pintf, false);
    return *this;
  }

  ksInsertFragmentParamExDispT& operator=(ksInsertFragmentParamExPtr pintf)
  {
    TAutoDriver<ksInsertFragmentParamEx>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_InsertFragmentParamEx));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_InsertFragmentParamEx);
  }

  void            __fastcall set_fileName(BSTR Value);
  BSTR            __fastcall get_fileName();
  void            __fastcall set_comment(BSTR Value);
  BSTR            __fastcall get_comment();
  void            __fastcall set_insertType(short Value);
  short           __fastcall get_insertType();
  void            __fastcall set_multiLayer(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_multiLayer();
  void            __fastcall set_scaleProjLinesSize(short Value);
  short           __fastcall get_scaleProjLinesSize();
  TOLEBOOL        __fastcall Init();
  LPDISPATCH      __fastcall GetPlace();
  TOLEBOOL        __fastcall SetPlace(LPDISPATCH val);

  __property   BSTR            fileName = {read = get_fileName, write = set_fileName};
  __property   BSTR            comment = {read = get_comment, write = set_comment};
  __property   short           insertType = {read = get_insertType, write = set_insertType};
  __property   TOLEBOOL        multiLayer = {read = get_multiLayer, write = set_multiLayer};
  __property   short           scaleProjLinesSize = {read = get_scaleProjLinesSize, write = set_scaleProjLinesSize};
};
typedef ksInsertFragmentParamExDispT<ksInsertFragmentParamEx> ksInsertFragmentParamExDisp;

// *********************************************************************//
// DispIntf:  ksBezierParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FC6-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksBezierParamDispT : public TAutoDriver<ksBezierParam>
{
public:
  ksBezierParamDispT(){}

  ksBezierParamDispT(ksBezierParam *pintf)
  {
    TAutoDriver<ksBezierParam>::Bind(pintf, false);
  }

  ksBezierParamDispT(ksBezierParamPtr pintf)
  {
    TAutoDriver<ksBezierParam>::Bind(pintf, true);
  }

  ksBezierParamDispT& operator=(ksBezierParam *pintf)
  {
    TAutoDriver<ksBezierParam>::Bind(pintf, false);
    return *this;
  }

  ksBezierParamDispT& operator=(ksBezierParamPtr pintf)
  {
    TAutoDriver<ksBezierParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_BezierParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_BezierParam);
  }

  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  void            __fastcall set_closed(short Value);
  short           __fastcall get_closed();
  TOLEBOOL        __fastcall Init();
  LPDISPATCH      __fastcall GetMathPointArr();
  TOLEBOOL        __fastcall SetMathPointArr(LPDISPATCH val);

  __property   long            style = {read = get_style, write = set_style};
  __property   short           closed = {read = get_closed, write = set_closed};
};
typedef ksBezierParamDispT<ksBezierParam> ksBezierParamDisp;

// *********************************************************************//
// DispIntf:  ksBezierPointParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FC9-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksBezierPointParamDispT : public TAutoDriver<ksBezierPointParam>
{
public:
  ksBezierPointParamDispT(){}

  ksBezierPointParamDispT(ksBezierPointParam *pintf)
  {
    TAutoDriver<ksBezierPointParam>::Bind(pintf, false);
  }

  ksBezierPointParamDispT(ksBezierPointParamPtr pintf)
  {
    TAutoDriver<ksBezierPointParam>::Bind(pintf, true);
  }

  ksBezierPointParamDispT& operator=(ksBezierPointParam *pintf)
  {
    TAutoDriver<ksBezierPointParam>::Bind(pintf, false);
    return *this;
  }

  ksBezierPointParamDispT& operator=(ksBezierPointParamPtr pintf)
  {
    TAutoDriver<ksBezierPointParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_BezierPointParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_BezierPointParam);
  }

  void            __fastcall set_x(double Value);
  double          __fastcall get_x();
  void            __fastcall set_y(double Value);
  double          __fastcall get_y();
  void            __fastcall set_ang(double Value);
  double          __fastcall get_ang();
  void            __fastcall set_left(double Value);
  double          __fastcall get_left();
  void            __fastcall set_right(double Value);
  double          __fastcall get_right();
  TOLEBOOL        __fastcall Init();

  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   double          left = {read = get_left, write = set_left};
  __property   double          right = {read = get_right, write = set_right};
};
typedef ksBezierPointParamDispT<ksBezierPointParam> ksBezierPointParamDisp;

// *********************************************************************//
// DispIntf:  ksDimTextParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FCC-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksDimTextParamDispT : public TAutoDriver<ksDimTextParam>
{
public:
  ksDimTextParamDispT(){}

  ksDimTextParamDispT(ksDimTextParam *pintf)
  {
    TAutoDriver<ksDimTextParam>::Bind(pintf, false);
  }

  ksDimTextParamDispT(ksDimTextParamPtr pintf)
  {
    TAutoDriver<ksDimTextParam>::Bind(pintf, true);
  }

  ksDimTextParamDispT& operator=(ksDimTextParam *pintf)
  {
    TAutoDriver<ksDimTextParam>::Bind(pintf, false);
    return *this;
  }

  ksDimTextParamDispT& operator=(ksDimTextParamPtr pintf)
  {
    TAutoDriver<ksDimTextParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_DimTextParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_DimTextParam);
  }

  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  void            __fastcall set_sign(long Value);
  long            __fastcall get_sign();
  void            __fastcall set_stringFlag(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_stringFlag();
  void            __fastcall set_bitFlag(long Value);
  long            __fastcall get_bitFlag();
  TOLEBOOL        __fastcall Init(TOLEBOOL stringFlag);
  TOLEBOOL        __fastcall GetBitFlagValue(long bitFlag);
  TOLEBOOL        __fastcall SetBitFlagValue(long val, TOLEBOOL state);
  LPDISPATCH      __fastcall GetTextArr();
  TOLEBOOL        __fastcall SetTextArr(LPDISPATCH val);

  __property   long            style = {read = get_style, write = set_style};
  __property   long            sign = {read = get_sign, write = set_sign};
  __property   TOLEBOOL        stringFlag = {read = get_stringFlag, write = set_stringFlag};
  __property   long            bitFlag = {read = get_bitFlag, write = set_bitFlag};
};
typedef ksDimTextParamDispT<ksDimTextParam> ksDimTextParamDisp;

// *********************************************************************//
// DispIntf:  ksLDimSourceParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FCF-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksLDimSourceParamDispT : public TAutoDriver<ksLDimSourceParam>
{
public:
  ksLDimSourceParamDispT(){}

  ksLDimSourceParamDispT(ksLDimSourceParam *pintf)
  {
    TAutoDriver<ksLDimSourceParam>::Bind(pintf, false);
  }

  ksLDimSourceParamDispT(ksLDimSourceParamPtr pintf)
  {
    TAutoDriver<ksLDimSourceParam>::Bind(pintf, true);
  }

  ksLDimSourceParamDispT& operator=(ksLDimSourceParam *pintf)
  {
    TAutoDriver<ksLDimSourceParam>::Bind(pintf, false);
    return *this;
  }

  ksLDimSourceParamDispT& operator=(ksLDimSourceParamPtr pintf)
  {
    TAutoDriver<ksLDimSourceParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_LDimSourceParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_LDimSourceParam);
  }

  void            __fastcall set_x1(double Value);
  double          __fastcall get_x1();
  void            __fastcall set_y1(double Value);
  double          __fastcall get_y1();
  void            __fastcall set_x2(double Value);
  double          __fastcall get_x2();
  void            __fastcall set_y2(double Value);
  double          __fastcall get_y2();
  void            __fastcall set_dx(double Value);
  double          __fastcall get_dx();
  void            __fastcall set_dy(double Value);
  double          __fastcall get_dy();
  void            __fastcall set_ps(short Value);
  short           __fastcall get_ps();
  void            __fastcall set_basePoint(short Value);
  short           __fastcall get_basePoint();
  TOLEBOOL        __fastcall Init();

  __property   double          x1 = {read = get_x1, write = set_x1};
  __property   double          y1 = {read = get_y1, write = set_y1};
  __property   double          x2 = {read = get_x2, write = set_x2};
  __property   double          y2 = {read = get_y2, write = set_y2};
  __property   double          dx = {read = get_dx, write = set_dx};
  __property   double          dy = {read = get_dy, write = set_dy};
  __property   short           ps = {read = get_ps, write = set_ps};
  __property   short           basePoint = {read = get_basePoint, write = set_basePoint};
};
typedef ksLDimSourceParamDispT<ksLDimSourceParam> ksLDimSourceParamDisp;

// *********************************************************************//
// DispIntf:  ksDimDrawingParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FD2-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksDimDrawingParamDispT : public TAutoDriver<ksDimDrawingParam>
{
public:
  ksDimDrawingParamDispT(){}

  ksDimDrawingParamDispT(ksDimDrawingParam *pintf)
  {
    TAutoDriver<ksDimDrawingParam>::Bind(pintf, false);
  }

  ksDimDrawingParamDispT(ksDimDrawingParamPtr pintf)
  {
    TAutoDriver<ksDimDrawingParam>::Bind(pintf, true);
  }

  ksDimDrawingParamDispT& operator=(ksDimDrawingParam *pintf)
  {
    TAutoDriver<ksDimDrawingParam>::Bind(pintf, false);
    return *this;
  }

  ksDimDrawingParamDispT& operator=(ksDimDrawingParamPtr pintf)
  {
    TAutoDriver<ksDimDrawingParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_DimDrawingParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_DimDrawingParam);
  }

  void            __fastcall set_pl1(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_pl1();
  void            __fastcall set_pl2(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_pl2();
  void            __fastcall set_pt1(short Value);
  short           __fastcall get_pt1();
  void            __fastcall set_pt2(short Value);
  short           __fastcall get_pt2();
  void            __fastcall set_textPos(long Value);
  long            __fastcall get_textPos();
  void            __fastcall set_textBase(short Value);
  short           __fastcall get_textBase();
  void            __fastcall set_shelfDir(long Value);
  long            __fastcall get_shelfDir();
  void            __fastcall set_ang(double Value);
  double          __fastcall get_ang();
  void            __fastcall set_lenght(long Value);
  long            __fastcall get_lenght();
  TOLEBOOL        __fastcall Init();

  __property   TOLEBOOL        pl1 = {read = get_pl1, write = set_pl1};
  __property   TOLEBOOL        pl2 = {read = get_pl2, write = set_pl2};
  __property   short           pt1 = {read = get_pt1, write = set_pt1};
  __property   short           pt2 = {read = get_pt2, write = set_pt2};
  __property   long            textPos = {read = get_textPos, write = set_textPos};
  __property   short           textBase = {read = get_textBase, write = set_textBase};
  __property   long            shelfDir = {read = get_shelfDir, write = set_shelfDir};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   long            lenght = {read = get_lenght, write = set_lenght};
};
typedef ksDimDrawingParamDispT<ksDimDrawingParam> ksDimDrawingParamDisp;

// *********************************************************************//
// DispIntf:  ksLDimParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FD5-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksLDimParamDispT : public TAutoDriver<ksLDimParam>
{
public:
  ksLDimParamDispT(){}

  ksLDimParamDispT(ksLDimParam *pintf)
  {
    TAutoDriver<ksLDimParam>::Bind(pintf, false);
  }

  ksLDimParamDispT(ksLDimParamPtr pintf)
  {
    TAutoDriver<ksLDimParam>::Bind(pintf, true);
  }

  ksLDimParamDispT& operator=(ksLDimParam *pintf)
  {
    TAutoDriver<ksLDimParam>::Bind(pintf, false);
    return *this;
  }

  ksLDimParamDispT& operator=(ksLDimParamPtr pintf)
  {
    TAutoDriver<ksLDimParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_LDimParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_LDimParam);
  }

  LPDISPATCH      __fastcall GetTPar();
  TOLEBOOL        __fastcall SetTPar(LPDISPATCH val);
  LPDISPATCH      __fastcall GetDPar();
  TOLEBOOL        __fastcall SetDPar(LPDISPATCH val);
  LPDISPATCH      __fastcall GetSPar();
  TOLEBOOL        __fastcall SetSPar(LPDISPATCH val);

};
typedef ksLDimParamDispT<ksLDimParam> ksLDimParamDisp;

// *********************************************************************//
// DispIntf:  ksADimSourceParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FD8-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksADimSourceParamDispT : public TAutoDriver<ksADimSourceParam>
{
public:
  ksADimSourceParamDispT(){}

  ksADimSourceParamDispT(ksADimSourceParam *pintf)
  {
    TAutoDriver<ksADimSourceParam>::Bind(pintf, false);
  }

  ksADimSourceParamDispT(ksADimSourceParamPtr pintf)
  {
    TAutoDriver<ksADimSourceParam>::Bind(pintf, true);
  }

  ksADimSourceParamDispT& operator=(ksADimSourceParam *pintf)
  {
    TAutoDriver<ksADimSourceParam>::Bind(pintf, false);
    return *this;
  }

  ksADimSourceParamDispT& operator=(ksADimSourceParamPtr pintf)
  {
    TAutoDriver<ksADimSourceParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ADimSourceParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ADimSourceParam);
  }

  void            __fastcall set_xc(double Value);
  double          __fastcall get_xc();
  void            __fastcall set_yc(double Value);
  double          __fastcall get_yc();
  void            __fastcall set_x1(double Value);
  double          __fastcall get_x1();
  void            __fastcall set_y1(double Value);
  double          __fastcall get_y1();
  void            __fastcall set_x2(double Value);
  double          __fastcall get_x2();
  void            __fastcall set_y2(double Value);
  double          __fastcall get_y2();
  void            __fastcall set_ang1(double Value);
  double          __fastcall get_ang1();
  void            __fastcall set_ang2(double Value);
  double          __fastcall get_ang2();
  void            __fastcall set_dir(long Value);
  long            __fastcall get_dir();
  void            __fastcall set_rad(double Value);
  double          __fastcall get_rad();
  TOLEBOOL        __fastcall Init();

  __property   double          xc = {read = get_xc, write = set_xc};
  __property   double          yc = {read = get_yc, write = set_yc};
  __property   double          x1 = {read = get_x1, write = set_x1};
  __property   double          y1 = {read = get_y1, write = set_y1};
  __property   double          x2 = {read = get_x2, write = set_x2};
  __property   double          y2 = {read = get_y2, write = set_y2};
  __property   double          ang1 = {read = get_ang1, write = set_ang1};
  __property   double          ang2 = {read = get_ang2, write = set_ang2};
  __property   long            dir = {read = get_dir, write = set_dir};
  __property   double          rad = {read = get_rad, write = set_rad};
};
typedef ksADimSourceParamDispT<ksADimSourceParam> ksADimSourceParamDisp;

// *********************************************************************//
// DispIntf:  ksDimensionPartsParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FDB-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksDimensionPartsParamDispT : public TAutoDriver<ksDimensionPartsParam>
{
public:
  ksDimensionPartsParamDispT(){}

  ksDimensionPartsParamDispT(ksDimensionPartsParam *pintf)
  {
    TAutoDriver<ksDimensionPartsParam>::Bind(pintf, false);
  }

  ksDimensionPartsParamDispT(ksDimensionPartsParamPtr pintf)
  {
    TAutoDriver<ksDimensionPartsParam>::Bind(pintf, true);
  }

  ksDimensionPartsParamDispT& operator=(ksDimensionPartsParam *pintf)
  {
    TAutoDriver<ksDimensionPartsParam>::Bind(pintf, false);
    return *this;
  }

  ksDimensionPartsParamDispT& operator=(ksDimensionPartsParamPtr pintf)
  {
    TAutoDriver<ksDimensionPartsParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_DimensionPartsParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_DimensionPartsParam);
  }

  void            __fastcall set_line1(long Value);
  long            __fastcall get_line1();
  void            __fastcall set_line2(long Value);
  long            __fastcall get_line2();
  void            __fastcall set_dimLine(long Value);
  long            __fastcall get_dimLine();
  void            __fastcall set_dimLine1(long Value);
  long            __fastcall get_dimLine1();
  void            __fastcall set_leg(long Value);
  long            __fastcall get_leg();
  void            __fastcall set_shelf(long Value);
  long            __fastcall get_shelf();
  void            __fastcall set_gr(long Value);
  long            __fastcall get_gr();
  void            __fastcall set_curveExt(long Value);
  long            __fastcall get_curveExt();
  TOLEBOOL        __fastcall Init();

  __property   long            line1 = {read = get_line1, write = set_line1};
  __property   long            line2 = {read = get_line2, write = set_line2};
  __property   long            dimLine = {read = get_dimLine, write = set_dimLine};
  __property   long            dimLine1 = {read = get_dimLine1, write = set_dimLine1};
  __property   long            leg = {read = get_leg, write = set_leg};
  __property   long            shelf = {read = get_shelf, write = set_shelf};
  __property   long            gr = {read = get_gr, write = set_gr};
  __property   long            curveExt = {read = get_curveExt, write = set_curveExt};
};
typedef ksDimensionPartsParamDispT<ksDimensionPartsParam> ksDimensionPartsParamDisp;

// *********************************************************************//
// DispIntf:  ksADimParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FDE-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksADimParamDispT : public TAutoDriver<ksADimParam>
{
public:
  ksADimParamDispT(){}

  ksADimParamDispT(ksADimParam *pintf)
  {
    TAutoDriver<ksADimParam>::Bind(pintf, false);
  }

  ksADimParamDispT(ksADimParamPtr pintf)
  {
    TAutoDriver<ksADimParam>::Bind(pintf, true);
  }

  ksADimParamDispT& operator=(ksADimParam *pintf)
  {
    TAutoDriver<ksADimParam>::Bind(pintf, false);
    return *this;
  }

  ksADimParamDispT& operator=(ksADimParamPtr pintf)
  {
    TAutoDriver<ksADimParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ADimParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ADimParam);
  }

  LPDISPATCH      __fastcall GetTPar();
  TOLEBOOL        __fastcall SetTPar(LPDISPATCH val);
  LPDISPATCH      __fastcall GetDPar();
  TOLEBOOL        __fastcall SetDPar(LPDISPATCH val);
  LPDISPATCH      __fastcall GetSPar();
  TOLEBOOL        __fastcall SetSPar(LPDISPATCH val);

};
typedef ksADimParamDispT<ksADimParam> ksADimParamDisp;

// *********************************************************************//
// DispIntf:  ksRBreakDrawingParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FE1-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksRBreakDrawingParamDispT : public TAutoDriver<ksRBreakDrawingParam>
{
public:
  ksRBreakDrawingParamDispT(){}

  ksRBreakDrawingParamDispT(ksRBreakDrawingParam *pintf)
  {
    TAutoDriver<ksRBreakDrawingParam>::Bind(pintf, false);
  }

  ksRBreakDrawingParamDispT(ksRBreakDrawingParamPtr pintf)
  {
    TAutoDriver<ksRBreakDrawingParam>::Bind(pintf, true);
  }

  ksRBreakDrawingParamDispT& operator=(ksRBreakDrawingParam *pintf)
  {
    TAutoDriver<ksRBreakDrawingParam>::Bind(pintf, false);
    return *this;
  }

  ksRBreakDrawingParamDispT& operator=(ksRBreakDrawingParamPtr pintf)
  {
    TAutoDriver<ksRBreakDrawingParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_RBreakDrawingParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_RBreakDrawingParam);
  }

  void            __fastcall set_pt(short Value);
  short           __fastcall get_pt();
  void            __fastcall set_ang(double Value);
  double          __fastcall get_ang();
  void            __fastcall set_pb(long Value);
  long            __fastcall get_pb();
  TOLEBOOL        __fastcall Init();

  __property   short           pt = {read = get_pt, write = set_pt};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   long            pb = {read = get_pb, write = set_pb};
};
typedef ksRBreakDrawingParamDispT<ksRBreakDrawingParam> ksRBreakDrawingParamDisp;

// *********************************************************************//
// DispIntf:  ksRBreakDimParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FE4-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksRBreakDimParamDispT : public TAutoDriver<ksRBreakDimParam>
{
public:
  ksRBreakDimParamDispT(){}

  ksRBreakDimParamDispT(ksRBreakDimParam *pintf)
  {
    TAutoDriver<ksRBreakDimParam>::Bind(pintf, false);
  }

  ksRBreakDimParamDispT(ksRBreakDimParamPtr pintf)
  {
    TAutoDriver<ksRBreakDimParam>::Bind(pintf, true);
  }

  ksRBreakDimParamDispT& operator=(ksRBreakDimParam *pintf)
  {
    TAutoDriver<ksRBreakDimParam>::Bind(pintf, false);
    return *this;
  }

  ksRBreakDimParamDispT& operator=(ksRBreakDimParamPtr pintf)
  {
    TAutoDriver<ksRBreakDimParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_RBreakDimParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_RBreakDimParam);
  }

  LPDISPATCH      __fastcall GetTPar();
  TOLEBOOL        __fastcall SetTPar(LPDISPATCH val);
  LPDISPATCH      __fastcall GetDPar();
  TOLEBOOL        __fastcall SetDPar(LPDISPATCH val);
  LPDISPATCH      __fastcall GetSPar();
  TOLEBOOL        __fastcall SetSPar(LPDISPATCH val);

};
typedef ksRBreakDimParamDispT<ksRBreakDimParam> ksRBreakDimParamDisp;

// *********************************************************************//
// DispIntf:  ksQualityItemParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FE7-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksQualityItemParamDispT : public TAutoDriver<ksQualityItemParam>
{
public:
  ksQualityItemParamDispT(){}

  ksQualityItemParamDispT(ksQualityItemParam *pintf)
  {
    TAutoDriver<ksQualityItemParam>::Bind(pintf, false);
  }

  ksQualityItemParamDispT(ksQualityItemParamPtr pintf)
  {
    TAutoDriver<ksQualityItemParam>::Bind(pintf, true);
  }

  ksQualityItemParamDispT& operator=(ksQualityItemParam *pintf)
  {
    TAutoDriver<ksQualityItemParam>::Bind(pintf, false);
    return *this;
  }

  ksQualityItemParamDispT& operator=(ksQualityItemParamPtr pintf)
  {
    TAutoDriver<ksQualityItemParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_QualityItemParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_QualityItemParam);
  }

  void            __fastcall set_minLimit(short Value);
  short           __fastcall get_minLimit();
  void            __fastcall set_maxLimit(short Value);
  short           __fastcall get_maxLimit();
  void            __fastcall set_high(double Value);
  double          __fastcall get_high();
  void            __fastcall set_low(double Value);
  double          __fastcall get_low();
  TOLEBOOL        __fastcall Init();

  __property   short           minLimit = {read = get_minLimit, write = set_minLimit};
  __property   short           maxLimit = {read = get_maxLimit, write = set_maxLimit};
  __property   double          high = {read = get_high, write = set_high};
  __property   double          low = {read = get_low, write = set_low};
};
typedef ksQualityItemParamDispT<ksQualityItemParam> ksQualityItemParamDisp;

// *********************************************************************//
// DispIntf:  ksQualityContensParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FEA-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksQualityContensParamDispT : public TAutoDriver<ksQualityContensParam>
{
public:
  ksQualityContensParamDispT(){}

  ksQualityContensParamDispT(ksQualityContensParam *pintf)
  {
    TAutoDriver<ksQualityContensParam>::Bind(pintf, false);
  }

  ksQualityContensParamDispT(ksQualityContensParamPtr pintf)
  {
    TAutoDriver<ksQualityContensParam>::Bind(pintf, true);
  }

  ksQualityContensParamDispT& operator=(ksQualityContensParam *pintf)
  {
    TAutoDriver<ksQualityContensParam>::Bind(pintf, false);
    return *this;
  }

  ksQualityContensParamDispT& operator=(ksQualityContensParamPtr pintf)
  {
    TAutoDriver<ksQualityContensParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_QualityContensParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_QualityContensParam);
  }

  void            __fastcall set_systemQuality(short Value);
  short           __fastcall get_systemQuality();
  void            __fastcall set_kindQuality(short Value);
  short           __fastcall get_kindQuality();
  void            __fastcall set_name(BSTR Value);
  BSTR            __fastcall get_name();
  TOLEBOOL        __fastcall Init();
  LPDISPATCH      __fastcall GetpQualityItems();
  TOLEBOOL        __fastcall SetpQualityItems(LPDISPATCH val);

  __property   short           systemQuality = {read = get_systemQuality, write = set_systemQuality};
  __property   short           kindQuality = {read = get_kindQuality, write = set_kindQuality};
  __property   BSTR            name = {read = get_name, write = set_name};
};
typedef ksQualityContensParamDispT<ksQualityContensParam> ksQualityContensParamDisp;

// *********************************************************************//
// DispIntf:  ksIterator
// Flags:     (4096) Dispatchable
// GUID:      {D06C9101-98CA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksIteratorDispT : public TAutoDriver<ksIterator>
{
public:
  ksIteratorDispT(){}

  ksIteratorDispT(ksIterator *pintf)
  {
    TAutoDriver<ksIterator>::Bind(pintf, false);
  }

  ksIteratorDispT(ksIteratorPtr pintf)
  {
    TAutoDriver<ksIterator>::Bind(pintf, true);
  }

  ksIteratorDispT& operator=(ksIterator *pintf)
  {
    TAutoDriver<ksIterator>::Bind(pintf, false);
    return *this;
  }

  ksIteratorDispT& operator=(ksIteratorPtr pintf)
  {
    TAutoDriver<ksIterator>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Iterator));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Iterator);
  }

  void            __fastcall set_reference(long Value);
  long            __fastcall get_reference();
  TOLEBOOL        __fastcall ksCreateIterator(long tipSeartch, long parent);
  long            __fastcall ksMoveIterator(BSTR ksMoveIterator);
  TOLEBOOL        __fastcall ksCreateAttrIterator(long obj, long key1, long key2, long key3, 
                                                  long key4, double numb);
  long            __fastcall ksMoveAttrIterator(BSTR ch, long* pObj);
  TOLEBOOL        __fastcall ksCreateSpcIterator(BSTR nameLib, long styleNumb, long spcObjType);
  TOLEBOOL        __fastcall ksCreateQualityIterator(short system, short withLimitation);
  TOLEBOOL        __fastcall ksMoveQualityIterator(LPDISPATCH param, short inMM, BSTR ch);
  long            __fastcall ksDeleteIterator();

  __property   long            reference = {read = get_reference, write = set_reference};
};
typedef ksIteratorDispT<ksIterator> ksIteratorDisp;

// *********************************************************************//
// DispIntf:  ksFragment
// Flags:     (4096) Dispatchable
// GUID:      {D06C9104-98CA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksFragmentDispT : public TAutoDriver<ksFragment>
{
public:
  ksFragmentDispT(){}

  ksFragmentDispT(ksFragment *pintf)
  {
    TAutoDriver<ksFragment>::Bind(pintf, false);
  }

  ksFragmentDispT(ksFragmentPtr pintf)
  {
    TAutoDriver<ksFragment>::Bind(pintf, true);
  }

  ksFragmentDispT& operator=(ksFragment *pintf)
  {
    TAutoDriver<ksFragment>::Bind(pintf, false);
    return *this;
  }

  ksFragmentDispT& operator=(ksFragmentPtr pintf)
  {
    TAutoDriver<ksFragment>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Fragment));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Fragment);
  }

  long            __fastcall ksFragmentDefinition(BSTR fileName, BSTR comment, short insertType);
  long            __fastcall ksInsertFragment(long p, TOLEBOOL curentLayer, LPDISPATCH par);
  long            __fastcall ksReadFragment(BSTR fileName, TOLEBOOL curentLayer, LPDISPATCH par);
  long            __fastcall ksReadFragmentToGroup(BSTR fileName, TOLEBOOL curentLayer, 
                                                   LPDISPATCH par);
  long            __fastcall ksReadFragmentToGroupEx(BSTR fileName, TOLEBOOL curentLayer, 
                                                     LPDISPATCH par, TOLEBOOL scaleProjLinesSize);
  long            __fastcall ksWriteFragment(long gr, BSTR fileName, BSTR comment, double xb, 
                                             double yb);
  long            __fastcall ksLocalFragmentDefinition(BSTR comment);
  long            __fastcall ksCloseLocalFragmentDefinition();
  long            __fastcall ksInsertFragmentEx(long p, TOLEBOOL curentLayer, LPDISPATCH par, 
                                                TOLEBOOL scaleProjLinesSize);

};
typedef ksFragmentDispT<ksFragment> ksFragmentDisp;

// *********************************************************************//
// DispIntf:  ksFragmentLibrary
// Flags:     (4096) Dispatchable
// GUID:      {D06C910A-98CA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksFragmentLibraryDispT : public TAutoDriver<ksFragmentLibrary>
{
public:
  ksFragmentLibraryDispT(){}

  ksFragmentLibraryDispT(ksFragmentLibrary *pintf)
  {
    TAutoDriver<ksFragmentLibrary>::Bind(pintf, false);
  }

  ksFragmentLibraryDispT(ksFragmentLibraryPtr pintf)
  {
    TAutoDriver<ksFragmentLibrary>::Bind(pintf, true);
  }

  ksFragmentLibraryDispT& operator=(ksFragmentLibrary *pintf)
  {
    TAutoDriver<ksFragmentLibrary>::Bind(pintf, false);
    return *this;
  }

  ksFragmentLibraryDispT& operator=(ksFragmentLibraryPtr pintf)
  {
    TAutoDriver<ksFragmentLibrary>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_FragmentLib));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_FragmentLib);
  }

  BSTR            __fastcall ksChoiceFragmentFromLib(BSTR frwLibFile, long* type);
  long            __fastcall ksFragmentLibraryOperation(BSTR libName, long type);
  long            __fastcall ksAddFragmentToLibrary(BSTR libName, BSTR frwName);
  long            __fastcall ksCheckFragmentLibrary(BSTR libName, TOLEBOOL possibleMessage);
  long            __fastcall ksExistFragmentInLibrary(BSTR frwName);

};
typedef ksFragmentLibraryDispT<ksFragmentLibrary> ksFragmentLibraryDisp;

// *********************************************************************//
// DispIntf:  ksTechnicalDemandParam
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B81-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksTechnicalDemandParamDispT : public TAutoDriver<ksTechnicalDemandParam>
{
public:
  ksTechnicalDemandParamDispT(){}

  ksTechnicalDemandParamDispT(ksTechnicalDemandParam *pintf)
  {
    TAutoDriver<ksTechnicalDemandParam>::Bind(pintf, false);
  }

  ksTechnicalDemandParamDispT(ksTechnicalDemandParamPtr pintf)
  {
    TAutoDriver<ksTechnicalDemandParam>::Bind(pintf, true);
  }

  ksTechnicalDemandParamDispT& operator=(ksTechnicalDemandParam *pintf)
  {
    TAutoDriver<ksTechnicalDemandParam>::Bind(pintf, false);
    return *this;
  }

  ksTechnicalDemandParamDispT& operator=(ksTechnicalDemandParamPtr pintf)
  {
    TAutoDriver<ksTechnicalDemandParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_TechnicalDemandParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_TechnicalDemandParam);
  }

  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  void            __fastcall set_strCount(short Value);
  short           __fastcall get_strCount();
  TOLEBOOL        __fastcall Init();
  LPDISPATCH      __fastcall GetPGab();
  TOLEBOOL        __fastcall SetPGab(LPDISPATCH val);

  __property   long            style = {read = get_style, write = set_style};
  __property   short           strCount = {read = get_strCount, write = set_strCount};
};
typedef ksTechnicalDemandParamDispT<ksTechnicalDemandParam> ksTechnicalDemandParamDisp;

// *********************************************************************//
// DispIntf:  ksOrdinatedSourceParam
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B84-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksOrdinatedSourceParamDispT : public TAutoDriver<ksOrdinatedSourceParam>
{
public:
  ksOrdinatedSourceParamDispT(){}

  ksOrdinatedSourceParamDispT(ksOrdinatedSourceParam *pintf)
  {
    TAutoDriver<ksOrdinatedSourceParam>::Bind(pintf, false);
  }

  ksOrdinatedSourceParamDispT(ksOrdinatedSourceParamPtr pintf)
  {
    TAutoDriver<ksOrdinatedSourceParam>::Bind(pintf, true);
  }

  ksOrdinatedSourceParamDispT& operator=(ksOrdinatedSourceParam *pintf)
  {
    TAutoDriver<ksOrdinatedSourceParam>::Bind(pintf, false);
    return *this;
  }

  ksOrdinatedSourceParamDispT& operator=(ksOrdinatedSourceParamPtr pintf)
  {
    TAutoDriver<ksOrdinatedSourceParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_OrdinatedSourceParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_OrdinatedSourceParam);
  }

  void            __fastcall set_x0(double Value);
  double          __fastcall get_x0();
  void            __fastcall set_x1(double Value);
  double          __fastcall get_x1();
  void            __fastcall set_y1(double Value);
  double          __fastcall get_y1();
  void            __fastcall set_y0(double Value);
  double          __fastcall get_y0();
  void            __fastcall set_x2(double Value);
  double          __fastcall get_x2();
  void            __fastcall set_y2(double Value);
  double          __fastcall get_y2();

  __property   double          x0 = {read = get_x0, write = set_x0};
  __property   double          x1 = {read = get_x1, write = set_x1};
  __property   double          y1 = {read = get_y1, write = set_y1};
  __property   double          y0 = {read = get_y0, write = set_y0};
  __property   double          x2 = {read = get_x2, write = set_x2};
  __property   double          y2 = {read = get_y2, write = set_y2};
};
typedef ksOrdinatedSourceParamDispT<ksOrdinatedSourceParam> ksOrdinatedSourceParamDisp;

// *********************************************************************//
// DispIntf:  ksOrdinatedDimParam
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B87-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksOrdinatedDimParamDispT : public TAutoDriver<ksOrdinatedDimParam>
{
public:
  ksOrdinatedDimParamDispT(){}

  ksOrdinatedDimParamDispT(ksOrdinatedDimParam *pintf)
  {
    TAutoDriver<ksOrdinatedDimParam>::Bind(pintf, false);
  }

  ksOrdinatedDimParamDispT(ksOrdinatedDimParamPtr pintf)
  {
    TAutoDriver<ksOrdinatedDimParam>::Bind(pintf, true);
  }

  ksOrdinatedDimParamDispT& operator=(ksOrdinatedDimParam *pintf)
  {
    TAutoDriver<ksOrdinatedDimParam>::Bind(pintf, false);
    return *this;
  }

  ksOrdinatedDimParamDispT& operator=(ksOrdinatedDimParamPtr pintf)
  {
    TAutoDriver<ksOrdinatedDimParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_OrdinatedDimParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_OrdinatedDimParam);
  }

  TOLEBOOL        __fastcall Init();
  LPDISPATCH      __fastcall GetTPar();
  TOLEBOOL        __fastcall SetTPar(LPDISPATCH val);
  LPDISPATCH      __fastcall GetDPar();
  TOLEBOOL        __fastcall SetDPar(LPDISPATCH val);
  LPDISPATCH      __fastcall GetSPar();
  TOLEBOOL        __fastcall SetSPar(LPDISPATCH val);

};
typedef ksOrdinatedDimParamDispT<ksOrdinatedDimParam> ksOrdinatedDimParamDisp;

// *********************************************************************//
// DispIntf:  ksOrdinatedDrawingParam
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B8A-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksOrdinatedDrawingParamDispT : public TAutoDriver<ksOrdinatedDrawingParam>
{
public:
  ksOrdinatedDrawingParamDispT(){}

  ksOrdinatedDrawingParamDispT(ksOrdinatedDrawingParam *pintf)
  {
    TAutoDriver<ksOrdinatedDrawingParam>::Bind(pintf, false);
  }

  ksOrdinatedDrawingParamDispT(ksOrdinatedDrawingParamPtr pintf)
  {
    TAutoDriver<ksOrdinatedDrawingParam>::Bind(pintf, true);
  }

  ksOrdinatedDrawingParamDispT& operator=(ksOrdinatedDrawingParam *pintf)
  {
    TAutoDriver<ksOrdinatedDrawingParam>::Bind(pintf, false);
    return *this;
  }

  ksOrdinatedDrawingParamDispT& operator=(ksOrdinatedDrawingParamPtr pintf)
  {
    TAutoDriver<ksOrdinatedDrawingParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_OrdinatedDrawingParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_OrdinatedDrawingParam);
  }

  void            __fastcall set_type(long Value);
  long            __fastcall get_type();

  __property   long            type = {read = get_type, write = set_type};
};
typedef ksOrdinatedDrawingParamDispT<ksOrdinatedDrawingParam> ksOrdinatedDrawingParamDisp;

// *********************************************************************//
// DispIntf:  ksSheetSize
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B8D-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksSheetSizeDispT : public TAutoDriver<ksSheetSize>
{
public:
  ksSheetSizeDispT(){}

  ksSheetSizeDispT(ksSheetSize *pintf)
  {
    TAutoDriver<ksSheetSize>::Bind(pintf, false);
  }

  ksSheetSizeDispT(ksSheetSizePtr pintf)
  {
    TAutoDriver<ksSheetSize>::Bind(pintf, true);
  }

  ksSheetSizeDispT& operator=(ksSheetSize *pintf)
  {
    TAutoDriver<ksSheetSize>::Bind(pintf, false);
    return *this;
  }

  ksSheetSizeDispT& operator=(ksSheetSizePtr pintf)
  {
    TAutoDriver<ksSheetSize>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_SheetSize));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_SheetSize);
  }

  void            __fastcall set_width(double Value);
  double          __fastcall get_width();
  void            __fastcall set_height(double Value);
  double          __fastcall get_height();
  TOLEBOOL        __fastcall Init();

  __property   double          width = {read = get_width, write = set_width};
  __property   double          height = {read = get_height, write = set_height};
};
typedef ksSheetSizeDispT<ksSheetSize> ksSheetSizeDisp;

// *********************************************************************//
// DispIntf:  ksStandartSheet
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B90-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksStandartSheetDispT : public TAutoDriver<ksStandartSheet>
{
public:
  ksStandartSheetDispT(){}

  ksStandartSheetDispT(ksStandartSheet *pintf)
  {
    TAutoDriver<ksStandartSheet>::Bind(pintf, false);
  }

  ksStandartSheetDispT(ksStandartSheetPtr pintf)
  {
    TAutoDriver<ksStandartSheet>::Bind(pintf, true);
  }

  ksStandartSheetDispT& operator=(ksStandartSheet *pintf)
  {
    TAutoDriver<ksStandartSheet>::Bind(pintf, false);
    return *this;
  }

  ksStandartSheetDispT& operator=(ksStandartSheetPtr pintf)
  {
    TAutoDriver<ksStandartSheet>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_StandartSheet));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_StandartSheet);
  }

  void            __fastcall set_format(short Value);
  short           __fastcall get_format();
  void            __fastcall set_multiply(short Value);
  short           __fastcall get_multiply();
  void            __fastcall set_direct(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_direct();
  TOLEBOOL        __fastcall Init();

  __property   short           format = {read = get_format, write = set_format};
  __property   short           multiply = {read = get_multiply, write = set_multiply};
  __property   TOLEBOOL        direct = {read = get_direct, write = set_direct};
};
typedef ksStandartSheetDispT<ksStandartSheet> ksStandartSheetDisp;

// *********************************************************************//
// DispIntf:  ksSheetPar
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B93-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksSheetParDispT : public TAutoDriver<ksSheetPar>
{
public:
  ksSheetParDispT(){}

  ksSheetParDispT(ksSheetPar *pintf)
  {
    TAutoDriver<ksSheetPar>::Bind(pintf, false);
  }

  ksSheetParDispT(ksSheetParPtr pintf)
  {
    TAutoDriver<ksSheetPar>::Bind(pintf, true);
  }

  ksSheetParDispT& operator=(ksSheetPar *pintf)
  {
    TAutoDriver<ksSheetPar>::Bind(pintf, false);
    return *this;
  }

  ksSheetParDispT& operator=(ksSheetParPtr pintf)
  {
    TAutoDriver<ksSheetPar>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_SheetPar));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_SheetPar);
  }

  void            __fastcall set_layoutName(BSTR Value);
  BSTR            __fastcall get_layoutName();
  void            __fastcall set_shtType(short Value);
  short           __fastcall get_shtType();
  TOLEBOOL        __fastcall Init();
  LPDISPATCH      __fastcall GetSheetParam();

  __property   BSTR            layoutName = {read = get_layoutName, write = set_layoutName};
  __property   short           shtType = {read = get_shtType, write = set_shtType};
};
typedef ksSheetParDispT<ksSheetPar> ksSheetParDisp;

// *********************************************************************//
// DispIntf:  ksDocumentParam
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B96-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksDocumentParamDispT : public TAutoDriver<ksDocumentParam>
{
public:
  ksDocumentParamDispT(){}

  ksDocumentParamDispT(ksDocumentParam *pintf)
  {
    TAutoDriver<ksDocumentParam>::Bind(pintf, false);
  }

  ksDocumentParamDispT(ksDocumentParamPtr pintf)
  {
    TAutoDriver<ksDocumentParam>::Bind(pintf, true);
  }

  ksDocumentParamDispT& operator=(ksDocumentParam *pintf)
  {
    TAutoDriver<ksDocumentParam>::Bind(pintf, false);
    return *this;
  }

  ksDocumentParamDispT& operator=(ksDocumentParamPtr pintf)
  {
    TAutoDriver<ksDocumentParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_DocumentParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_DocumentParam);
  }

  void            __fastcall set_fileName(BSTR Value);
  BSTR            __fastcall get_fileName();
  void            __fastcall set_comment(BSTR Value);
  BSTR            __fastcall get_comment();
  void            __fastcall set_author(BSTR Value);
  BSTR            __fastcall get_author();
  void            __fastcall set_type(short Value);
  short           __fastcall get_type();
  void            __fastcall set_regime(short Value);
  short           __fastcall get_regime();
  TOLEBOOL        __fastcall Init();
  LPDISPATCH      __fastcall GetLayoutParam();

  __property   BSTR            fileName = {read = get_fileName, write = set_fileName};
  __property   BSTR            comment = {read = get_comment, write = set_comment};
  __property   BSTR            author = {read = get_author, write = set_author};
  __property   short           type = {read = get_type, write = set_type};
  __property   short           regime = {read = get_regime, write = set_regime};
};
typedef ksDocumentParamDispT<ksDocumentParam> ksDocumentParamDisp;

// *********************************************************************//
// DispIntf:  ksDimensionsOptions
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B99-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksDimensionsOptionsDispT : public TAutoDriver<ksDimensionsOptions>
{
public:
  ksDimensionsOptionsDispT(){}

  ksDimensionsOptionsDispT(ksDimensionsOptions *pintf)
  {
    TAutoDriver<ksDimensionsOptions>::Bind(pintf, false);
  }

  ksDimensionsOptionsDispT(ksDimensionsOptionsPtr pintf)
  {
    TAutoDriver<ksDimensionsOptions>::Bind(pintf, true);
  }

  ksDimensionsOptionsDispT& operator=(ksDimensionsOptions *pintf)
  {
    TAutoDriver<ksDimensionsOptions>::Bind(pintf, false);
    return *this;
  }

  ksDimensionsOptionsDispT& operator=(ksDimensionsOptionsPtr pintf)
  {
    TAutoDriver<ksDimensionsOptions>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_DimensionsOptions));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_DimensionsOptions);
  }

  void            __fastcall set_proLineExtension(double Value);
  double          __fastcall get_proLineExtension();
  void            __fastcall set_textDistanceFromDimLine(double Value);
  double          __fastcall get_textDistanceFromDimLine();
  void            __fastcall set_textDistanceFromProLine(double Value);
  double          __fastcall get_textDistanceFromProLine();
  void            __fastcall set_dimLineExtension(double Value);
  double          __fastcall get_dimLineExtension();
  void            __fastcall set_arrowLength(double Value);
  double          __fastcall get_arrowLength();
  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  void            __fastcall set_decimalsCount(short Value);
  short           __fastcall get_decimalsCount();
  void            __fastcall set_anglePrecisionLevel(long Value);
  long            __fastcall get_anglePrecisionLevel();
  void            __fastcall set_hiddenToleranceNumber(long Value);
  long            __fastcall get_hiddenToleranceNumber();
  TOLEBOOL        __fastcall Init();

  __property   double          proLineExtension = {read = get_proLineExtension, write = set_proLineExtension};
  __property   double          textDistanceFromDimLine = {read = get_textDistanceFromDimLine, write = set_textDistanceFromDimLine};
  __property   double          textDistanceFromProLine = {read = get_textDistanceFromProLine, write = set_textDistanceFromProLine};
  __property   double          dimLineExtension = {read = get_dimLineExtension, write = set_dimLineExtension};
  __property   double          arrowLength = {read = get_arrowLength, write = set_arrowLength};
  __property   long            style = {read = get_style, write = set_style};
  __property   short           decimalsCount = {read = get_decimalsCount, write = set_decimalsCount};
  __property   long            anglePrecisionLevel = {read = get_anglePrecisionLevel, write = set_anglePrecisionLevel};
  __property   long            hiddenToleranceNumber = {read = get_hiddenToleranceNumber, write = set_hiddenToleranceNumber};
};
typedef ksDimensionsOptionsDispT<ksDimensionsOptions> ksDimensionsOptionsDisp;

// *********************************************************************//
// DispIntf:  ksSnapOptions
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B9C-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksSnapOptionsDispT : public TAutoDriver<ksSnapOptions>
{
public:
  ksSnapOptionsDispT(){}

  ksSnapOptionsDispT(ksSnapOptions *pintf)
  {
    TAutoDriver<ksSnapOptions>::Bind(pintf, false);
  }

  ksSnapOptionsDispT(ksSnapOptionsPtr pintf)
  {
    TAutoDriver<ksSnapOptions>::Bind(pintf, true);
  }

  ksSnapOptionsDispT& operator=(ksSnapOptions *pintf)
  {
    TAutoDriver<ksSnapOptions>::Bind(pintf, false);
    return *this;
  }

  ksSnapOptionsDispT& operator=(ksSnapOptionsPtr pintf)
  {
    TAutoDriver<ksSnapOptions>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_SnapOptions));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_SnapOptions);
  }

  void            __fastcall set_nearestPoint(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_nearestPoint();
  void            __fastcall set_nearestMiddle(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_nearestMiddle();
  void            __fastcall set_intersect(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_intersect();
  void            __fastcall set_tangentToCurve(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_tangentToCurve();
  void            __fastcall set_normalToCurve(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_normalToCurve();
  void            __fastcall set_grid(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_grid();
  void            __fastcall set_xyAlign(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_xyAlign();
  void            __fastcall set_angSnap(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_angSnap();
  void            __fastcall set_pointOnCurve(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_pointOnCurve();
  void            __fastcall set_commonOpt(long Value);
  long            __fastcall get_commonOpt();
  void            __fastcall set_angleStep(double Value);
  double          __fastcall get_angleStep();
  void            __fastcall set_localSnap(short Value);
  short           __fastcall get_localSnap();
  TOLEBOOL        __fastcall Init();
  TOLEBOOL        __fastcall GetCommonOptValue(long val);
  TOLEBOOL        __fastcall SetCommonOptValue(long val, TOLEBOOL state);

  __property   TOLEBOOL        nearestPoint = {read = get_nearestPoint, write = set_nearestPoint};
  __property   TOLEBOOL        nearestMiddle = {read = get_nearestMiddle, write = set_nearestMiddle};
  __property   TOLEBOOL        intersect = {read = get_intersect, write = set_intersect};
  __property   TOLEBOOL        tangentToCurve = {read = get_tangentToCurve, write = set_tangentToCurve};
  __property   TOLEBOOL        normalToCurve = {read = get_normalToCurve, write = set_normalToCurve};
  __property   TOLEBOOL        grid = {read = get_grid, write = set_grid};
  __property   TOLEBOOL        xyAlign = {read = get_xyAlign, write = set_xyAlign};
  __property   TOLEBOOL        angSnap = {read = get_angSnap, write = set_angSnap};
  __property   TOLEBOOL        pointOnCurve = {read = get_pointOnCurve, write = set_pointOnCurve};
  __property   long            commonOpt = {read = get_commonOpt, write = set_commonOpt};
  __property   double          angleStep = {read = get_angleStep, write = set_angleStep};
  __property   short           localSnap = {read = get_localSnap, write = set_localSnap};
};
typedef ksSnapOptionsDispT<ksSnapOptions> ksSnapOptionsDisp;

// *********************************************************************//
// DispIntf:  ksLibraryStyleParam
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B9F-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksLibraryStyleParamDispT : public TAutoDriver<ksLibraryStyleParam>
{
public:
  ksLibraryStyleParamDispT(){}

  ksLibraryStyleParamDispT(ksLibraryStyleParam *pintf)
  {
    TAutoDriver<ksLibraryStyleParam>::Bind(pintf, false);
  }

  ksLibraryStyleParamDispT(ksLibraryStyleParamPtr pintf)
  {
    TAutoDriver<ksLibraryStyleParam>::Bind(pintf, true);
  }

  ksLibraryStyleParamDispT& operator=(ksLibraryStyleParam *pintf)
  {
    TAutoDriver<ksLibraryStyleParam>::Bind(pintf, false);
    return *this;
  }

  ksLibraryStyleParamDispT& operator=(ksLibraryStyleParamPtr pintf)
  {
    TAutoDriver<ksLibraryStyleParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_LibraryStyleParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_LibraryStyleParam);
  }

  void            __fastcall set_styleName(BSTR Value);
  BSTR            __fastcall get_styleName();
  void            __fastcall set_styleId(long Value);
  long            __fastcall get_styleId();
  TOLEBOOL        __fastcall Init();

  __property   BSTR            styleName = {read = get_styleName, write = set_styleName};
  __property   long            styleId = {read = get_styleId, write = set_styleId};
};
typedef ksLibraryStyleParamDispT<ksLibraryStyleParam> ksLibraryStyleParamDisp;

// *********************************************************************//
// DispIntf:  ksStampNotify
// Flags:     (4096) Dispatchable
// GUID:      {404E7D5A-A13F-4CFF-8214-FEA7012110CB}
// *********************************************************************//
template <class T>
class ksStampNotifyDispT : public TAutoDriver<ksStampNotify>
{
public:
  ksStampNotifyDispT(){}

  void Attach(LPUNKNOWN punk)
  { m_Dispatch = static_cast<T*>(punk); }

  TOLEBOOL        __fastcall BeginEditStamp();
  TOLEBOOL        __fastcall EndEditStamp(TOLEBOOL editResult);
  TOLEBOOL        __fastcall StampCellDblClick(long number);
  TOLEBOOL        __fastcall StampCellBeginEdit(long number);
  TOLEBOOL        __fastcall StampBeginClearCells(TVariant cells);

};
typedef ksStampNotifyDispT<ksStampNotify> ksStampNotifyDisp;

// *********************************************************************//
// DispIntf:  ksStamp
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5BA5-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksStampDispT : public TAutoDriver<ksStamp>
{
public:
  ksStampDispT(){}

  ksStampDispT(ksStamp *pintf)
  {
    TAutoDriver<ksStamp>::Bind(pintf, false);
  }

  ksStampDispT(ksStampPtr pintf)
  {
    TAutoDriver<ksStamp>::Bind(pintf, true);
  }

  ksStampDispT& operator=(ksStamp *pintf)
  {
    TAutoDriver<ksStamp>::Bind(pintf, false);
    return *this;
  }

  ksStampDispT& operator=(ksStampPtr pintf)
  {
    TAutoDriver<ksStamp>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Stamp));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Stamp);
  }

  void            __fastcall set_reference(long Value);
  long            __fastcall get_reference();
  long            __fastcall ksOpenStamp();
  long            __fastcall ksCloseStamp();
  long            __fastcall ksClearStamp(long numb);
  LPDISPATCH      __fastcall ksGetStampColumnText(long* numb);
  long            __fastcall ksSetStampColumnText(long numb, LPDISPATCH textArr);
  long            __fastcall ksColumnNumber(long numb);
  long            __fastcall ksTextLine(LPDISPATCH textItem);
  long            __fastcall ksSetTextLineAlign(short align);
  long            __fastcall get_SheetNumb();

  __property   long            reference = {read = get_reference, write = set_reference};
  __property   long            SheetNumb = {read = get_SheetNumb};
};
typedef ksStampDispT<ksStamp> ksStampDisp;

// *********************************************************************//
// DispIntf:  ksSheetOptions
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5BA8-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksSheetOptionsDispT : public TAutoDriver<ksSheetOptions>
{
public:
  ksSheetOptionsDispT(){}

  ksSheetOptionsDispT(ksSheetOptions *pintf)
  {
    TAutoDriver<ksSheetOptions>::Bind(pintf, false);
  }

  ksSheetOptionsDispT(ksSheetOptionsPtr pintf)
  {
    TAutoDriver<ksSheetOptions>::Bind(pintf, true);
  }

  ksSheetOptionsDispT& operator=(ksSheetOptions *pintf)
  {
    TAutoDriver<ksSheetOptions>::Bind(pintf, false);
    return *this;
  }

  ksSheetOptionsDispT& operator=(ksSheetOptionsPtr pintf)
  {
    TAutoDriver<ksSheetOptions>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_SheetOptions));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_SheetOptions);
  }

  void            __fastcall set_shtType(short Value);
  short           __fastcall get_shtType();
  void            __fastcall set_layoutName(BSTR Value);
  BSTR            __fastcall get_layoutName();
  void            __fastcall set_sheetType(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_sheetType();
  TOLEBOOL        __fastcall Init();
  LPDISPATCH      __fastcall GetSheetParam(TOLEBOOL type);

  __property   short           shtType = {read = get_shtType, write = set_shtType};
  __property   BSTR            layoutName = {read = get_layoutName, write = set_layoutName};
  __property   TOLEBOOL        sheetType = {read = get_sheetType, write = set_sheetType};
};
typedef ksSheetOptionsDispT<ksSheetOptions> ksSheetOptionsDisp;

// *********************************************************************//
// DispIntf:  ksCurvePatternEx
// Flags:     (4096) Dispatchable
// GUID:      {910EC549-958D-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksCurvePatternExDispT : public TAutoDriver<ksCurvePatternEx>
{
public:
  ksCurvePatternExDispT(){}

  ksCurvePatternExDispT(ksCurvePatternEx *pintf)
  {
    TAutoDriver<ksCurvePatternEx>::Bind(pintf, false);
  }

  ksCurvePatternExDispT(ksCurvePatternExPtr pintf)
  {
    TAutoDriver<ksCurvePatternEx>::Bind(pintf, true);
  }

  ksCurvePatternExDispT& operator=(ksCurvePatternEx *pintf)
  {
    TAutoDriver<ksCurvePatternEx>::Bind(pintf, false);
    return *this;
  }

  ksCurvePatternExDispT& operator=(ksCurvePatternExPtr pintf)
  {
    TAutoDriver<ksCurvePatternEx>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_CurvePatternEx));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_CurvePatternEx);
  }

  void            __fastcall set_visibleSeg(double Value);
  double          __fastcall get_visibleSeg();
  void            __fastcall set_invisibleSeg(double Value);
  double          __fastcall get_invisibleSeg();
  void            __fastcall set_dx(double Value);
  double          __fastcall get_dx();
  void            __fastcall set_dy(double Value);
  double          __fastcall get_dy();
  void            __fastcall set_pictureType(short Value);
  short           __fastcall get_pictureType();
  void            __fastcall set_frwName(BSTR Value);
  BSTR            __fastcall get_frwName();
  TOLEBOOL        __fastcall Init();
  LPDISPATCH      __fastcall GetCurvePicture();
  TOLEBOOL        __fastcall SetCurvePicture(LPDISPATCH picture);

  __property   double          visibleSeg = {read = get_visibleSeg, write = set_visibleSeg};
  __property   double          invisibleSeg = {read = get_invisibleSeg, write = set_invisibleSeg};
  __property   double          dx = {read = get_dx, write = set_dx};
  __property   double          dy = {read = get_dy, write = set_dy};
  __property   short           pictureType = {read = get_pictureType, write = set_pictureType};
  __property   BSTR            frwName = {read = get_frwName, write = set_frwName};
};
typedef ksCurvePatternExDispT<ksCurvePatternEx> ksCurvePatternExDisp;

// *********************************************************************//
// DispIntf:  ksCurveStyleParam
// Flags:     (4096) Dispatchable
// GUID:      {910EC54C-958D-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksCurveStyleParamDispT : public TAutoDriver<ksCurveStyleParam>
{
public:
  ksCurveStyleParamDispT(){}

  ksCurveStyleParamDispT(ksCurveStyleParam *pintf)
  {
    TAutoDriver<ksCurveStyleParam>::Bind(pintf, false);
  }

  ksCurveStyleParamDispT(ksCurveStyleParamPtr pintf)
  {
    TAutoDriver<ksCurveStyleParam>::Bind(pintf, true);
  }

  ksCurveStyleParamDispT& operator=(ksCurveStyleParam *pintf)
  {
    TAutoDriver<ksCurveStyleParam>::Bind(pintf, false);
    return *this;
  }

  ksCurveStyleParamDispT& operator=(ksCurveStyleParamPtr pintf)
  {
    TAutoDriver<ksCurveStyleParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_CurveStyleParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_CurveStyleParam);
  }

  void            __fastcall set_name(BSTR Value);
  BSTR            __fastcall get_name();
  void            __fastcall set_color(long Value);
  long            __fastcall get_color();
  void            __fastcall set_paperWidth(double Value);
  double          __fastcall get_paperWidth();
  void            __fastcall set_screenWidth(short Value);
  short           __fastcall get_screenWidth();
  void            __fastcall set_curveType(short Value);
  short           __fastcall get_curveType();
  void            __fastcall set_even(short Value);
  short           __fastcall get_even();
  void            __fastcall set_widthPen(short Value);
  short           __fastcall get_widthPen();
  LPDISPATCH      __fastcall GetPPattern(long type);
  TOLEBOOL        __fastcall SetPPattern(LPDISPATCH pattern);
  TOLEBOOL        __fastcall SetPropertyCurve(long val, TOLEBOOL state);
  TOLEBOOL        __fastcall GetPropertyCurve(long val);
  TOLEBOOL        __fastcall Init();

  __property   BSTR            name = {read = get_name, write = set_name};
  __property   long            color = {read = get_color, write = set_color};
  __property   double          paperWidth = {read = get_paperWidth, write = set_paperWidth};
  __property   short           screenWidth = {read = get_screenWidth, write = set_screenWidth};
  __property   short           curveType = {read = get_curveType, write = set_curveType};
  __property   short           even = {read = get_even, write = set_even};
  __property   short           widthPen = {read = get_widthPen, write = set_widthPen};
};
typedef ksCurveStyleParamDispT<ksCurveStyleParam> ksCurveStyleParamDisp;

// *********************************************************************//
// DispIntf:  ksTextStyleParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E24-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksTextStyleParamDispT : public TAutoDriver<ksTextStyleParam>
{
public:
  ksTextStyleParamDispT(){}

  ksTextStyleParamDispT(ksTextStyleParam *pintf)
  {
    TAutoDriver<ksTextStyleParam>::Bind(pintf, false);
  }

  ksTextStyleParamDispT(ksTextStyleParamPtr pintf)
  {
    TAutoDriver<ksTextStyleParam>::Bind(pintf, true);
  }

  ksTextStyleParamDispT& operator=(ksTextStyleParam *pintf)
  {
    TAutoDriver<ksTextStyleParam>::Bind(pintf, false);
    return *this;
  }

  ksTextStyleParamDispT& operator=(ksTextStyleParamPtr pintf)
  {
    TAutoDriver<ksTextStyleParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_TextStyleParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_TextStyleParam);
  }

  void            __fastcall set_name(BSTR Value);
  BSTR            __fastcall get_name();
  void            __fastcall set_height(double Value);
  double          __fastcall get_height();
  void            __fastcall set_ksu(double Value);
  double          __fastcall get_ksu();
  void            __fastcall set_step(double Value);
  double          __fastcall get_step();
  void            __fastcall set_fontName(BSTR Value);
  BSTR            __fastcall get_fontName();
  void            __fastcall set_color(long Value);
  long            __fastcall get_color();
  void            __fastcall set_align(short Value);
  short           __fastcall get_align();
  void            __fastcall set_bold(short Value);
  short           __fastcall get_bold();
  void            __fastcall set_italic(short Value);
  short           __fastcall get_italic();
  void            __fastcall set_underline(short Value);
  short           __fastcall get_underline();
  void            __fastcall set_posKS(double Value);
  double          __fastcall get_posKS();
  void            __fastcall set_stepParPre(double Value);
  double          __fastcall get_stepParPre();
  void            __fastcall set_stepParPst(double Value);
  double          __fastcall get_stepParPst();
  void            __fastcall set_leftEdge(double Value);
  double          __fastcall get_leftEdge();
  void            __fastcall set_rightEdge(double Value);
  double          __fastcall get_rightEdge();
  TOLEBOOL        __fastcall Init();

  __property   BSTR            name = {read = get_name, write = set_name};
  __property   double          height = {read = get_height, write = set_height};
  __property   double          ksu = {read = get_ksu, write = set_ksu};
  __property   double          step = {read = get_step, write = set_step};
  __property   BSTR            fontName = {read = get_fontName, write = set_fontName};
  __property   long            color = {read = get_color, write = set_color};
  __property   short           align = {read = get_align, write = set_align};
  __property   short           bold = {read = get_bold, write = set_bold};
  __property   short           italic = {read = get_italic, write = set_italic};
  __property   short           underline = {read = get_underline, write = set_underline};
  __property   double          posKS = {read = get_posKS, write = set_posKS};
  __property   double          stepParPre = {read = get_stepParPre, write = set_stepParPre};
  __property   double          stepParPst = {read = get_stepParPst, write = set_stepParPst};
  __property   double          leftEdge = {read = get_leftEdge, write = set_leftEdge};
  __property   double          rightEdge = {read = get_rightEdge, write = set_rightEdge};
};
typedef ksTextStyleParamDispT<ksTextStyleParam> ksTextStyleParamDisp;

// *********************************************************************//
// DispIntf:  ksHatchLineParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E27-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksHatchLineParamDispT : public TAutoDriver<ksHatchLineParam>
{
public:
  ksHatchLineParamDispT(){}

  ksHatchLineParamDispT(ksHatchLineParam *pintf)
  {
    TAutoDriver<ksHatchLineParam>::Bind(pintf, false);
  }

  ksHatchLineParamDispT(ksHatchLineParamPtr pintf)
  {
    TAutoDriver<ksHatchLineParam>::Bind(pintf, true);
  }

  ksHatchLineParamDispT& operator=(ksHatchLineParam *pintf)
  {
    TAutoDriver<ksHatchLineParam>::Bind(pintf, false);
    return *this;
  }

  ksHatchLineParamDispT& operator=(ksHatchLineParamPtr pintf)
  {
    TAutoDriver<ksHatchLineParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_HatchLineParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_HatchLineParam);
  }

  void            __fastcall set_x(double Value);
  double          __fastcall get_x();
  void            __fastcall set_y(double Value);
  double          __fastcall get_y();
  void            __fastcall set_dx(double Value);
  double          __fastcall get_dx();
  void            __fastcall set_dy(double Value);
  double          __fastcall get_dy();
  void            __fastcall set_ang(double Value);
  double          __fastcall get_ang();
  void            __fastcall set_typeCurvStyle(short Value);
  short           __fastcall get_typeCurvStyle();
  void            __fastcall set_style(short Value);
  short           __fastcall get_style();
  LPDISPATCH      __fastcall GetCurPar();
  TOLEBOOL        __fastcall SetCurPar(LPDISPATCH curPar);
  TOLEBOOL        __fastcall Init();

  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   double          dx = {read = get_dx, write = set_dx};
  __property   double          dy = {read = get_dy, write = set_dy};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   short           typeCurvStyle = {read = get_typeCurvStyle, write = set_typeCurvStyle};
  __property   short           style = {read = get_style, write = set_style};
};
typedef ksHatchLineParamDispT<ksHatchLineParam> ksHatchLineParamDisp;

// *********************************************************************//
// DispIntf:  ksHatchStyleParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E2A-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksHatchStyleParamDispT : public TAutoDriver<ksHatchStyleParam>
{
public:
  ksHatchStyleParamDispT(){}

  ksHatchStyleParamDispT(ksHatchStyleParam *pintf)
  {
    TAutoDriver<ksHatchStyleParam>::Bind(pintf, false);
  }

  ksHatchStyleParamDispT(ksHatchStyleParamPtr pintf)
  {
    TAutoDriver<ksHatchStyleParam>::Bind(pintf, true);
  }

  ksHatchStyleParamDispT& operator=(ksHatchStyleParam *pintf)
  {
    TAutoDriver<ksHatchStyleParam>::Bind(pintf, false);
    return *this;
  }

  ksHatchStyleParamDispT& operator=(ksHatchStyleParamPtr pintf)
  {
    TAutoDriver<ksHatchStyleParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_HatchStyleParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_HatchStyleParam);
  }

  void            __fastcall set_name(BSTR Value);
  BSTR            __fastcall get_name();
  void            __fastcall set_step(double Value);
  double          __fastcall get_step();
  void            __fastcall set_ang(double Value);
  double          __fastcall get_ang();
  void            __fastcall set_width(double Value);
  double          __fastcall get_width();
  void            __fastcall set_color(long Value);
  long            __fastcall get_color();
  void            __fastcall set_mayChangeAngle(short Value);
  short           __fastcall get_mayChangeAngle();
  void            __fastcall set_mayChangeWidth(short Value);
  short           __fastcall get_mayChangeWidth();
  void            __fastcall set_mayChangeSpace(short Value);
  short           __fastcall get_mayChangeSpace();
  void            __fastcall set_isScalable(short Value);
  short           __fastcall get_isScalable();
  LPDISPATCH      __fastcall GetRefPoint();
  TOLEBOOL        __fastcall SetRefPoint(LPDISPATCH refPoint);
  LPDISPATCH      __fastcall GetArrLineParam();
  TOLEBOOL        __fastcall SetArrLineParam(LPDISPATCH arrLineParam);
  TOLEBOOL        __fastcall Init();

  __property   BSTR            name = {read = get_name, write = set_name};
  __property   double          step = {read = get_step, write = set_step};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   double          width = {read = get_width, write = set_width};
  __property   long            color = {read = get_color, write = set_color};
  __property   short           mayChangeAngle = {read = get_mayChangeAngle, write = set_mayChangeAngle};
  __property   short           mayChangeWidth = {read = get_mayChangeWidth, write = set_mayChangeWidth};
  __property   short           mayChangeSpace = {read = get_mayChangeSpace, write = set_mayChangeSpace};
  __property   short           isScalable = {read = get_isScalable, write = set_isScalable};
};
typedef ksHatchStyleParamDispT<ksHatchStyleParam> ksHatchStyleParamDisp;

// *********************************************************************//
// DispIntf:  ksRectParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E2D-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksRectParamDispT : public TAutoDriver<ksRectParam>
{
public:
  ksRectParamDispT(){}

  ksRectParamDispT(ksRectParam *pintf)
  {
    TAutoDriver<ksRectParam>::Bind(pintf, false);
  }

  ksRectParamDispT(ksRectParamPtr pintf)
  {
    TAutoDriver<ksRectParam>::Bind(pintf, true);
  }

  ksRectParamDispT& operator=(ksRectParam *pintf)
  {
    TAutoDriver<ksRectParam>::Bind(pintf, false);
    return *this;
  }

  ksRectParamDispT& operator=(ksRectParamPtr pintf)
  {
    TAutoDriver<ksRectParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_RectParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_RectParam);
  }

  LPDISPATCH      __fastcall GetpBot();
  TOLEBOOL        __fastcall SetpBot(LPDISPATCH pBot);
  LPDISPATCH      __fastcall GetpTop();
  TOLEBOOL        __fastcall SetpTop(LPDISPATCH pTop);

};
typedef ksRectParamDispT<ksRectParam> ksRectParamDisp;

// *********************************************************************//
// DispIntf:  ksShelfPar
// Flags:     (4096) Dispatchable
// GUID:      {3F715E30-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksShelfParDispT : public TAutoDriver<ksShelfPar>
{
public:
  ksShelfParDispT(){}

  ksShelfParDispT(ksShelfPar *pintf)
  {
    TAutoDriver<ksShelfPar>::Bind(pintf, false);
  }

  ksShelfParDispT(ksShelfParPtr pintf)
  {
    TAutoDriver<ksShelfPar>::Bind(pintf, true);
  }

  ksShelfParDispT& operator=(ksShelfPar *pintf)
  {
    TAutoDriver<ksShelfPar>::Bind(pintf, false);
    return *this;
  }

  ksShelfParDispT& operator=(ksShelfParPtr pintf)
  {
    TAutoDriver<ksShelfPar>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ShelfPar));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ShelfPar);
  }

  void            __fastcall set_psh(long Value);
  long            __fastcall get_psh();
  void            __fastcall set_ang(double Value);
  double          __fastcall get_ang();
  void            __fastcall set_length(long Value);
  long            __fastcall get_length();
  TOLEBOOL        __fastcall Init();

  __property   long            psh = {read = get_psh, write = set_psh};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   long            length = {read = get_length, write = set_length};
};
typedef ksShelfParDispT<ksShelfPar> ksShelfParDisp;

// *********************************************************************//
// DispIntf:  ksRoughPar
// Flags:     (4096) Dispatchable
// GUID:      {3F715E33-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksRoughParDispT : public TAutoDriver<ksRoughPar>
{
public:
  ksRoughParDispT(){}

  ksRoughParDispT(ksRoughPar *pintf)
  {
    TAutoDriver<ksRoughPar>::Bind(pintf, false);
  }

  ksRoughParDispT(ksRoughParPtr pintf)
  {
    TAutoDriver<ksRoughPar>::Bind(pintf, true);
  }

  ksRoughParDispT& operator=(ksRoughPar *pintf)
  {
    TAutoDriver<ksRoughPar>::Bind(pintf, false);
    return *this;
  }

  ksRoughParDispT& operator=(ksRoughParPtr pintf)
  {
    TAutoDriver<ksRoughPar>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_roughPar));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_roughPar);
  }

  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  void            __fastcall set_type(short Value);
  short           __fastcall get_type();
  void            __fastcall set_around(short Value);
  short           __fastcall get_around();
  void            __fastcall set_x(double Value);
  double          __fastcall get_x();
  void            __fastcall set_y(double Value);
  double          __fastcall get_y();
  void            __fastcall set_ang(double Value);
  double          __fastcall get_ang();
  void            __fastcall set_cText0(short Value);
  short           __fastcall get_cText0();
  void            __fastcall set_cText1(short Value);
  short           __fastcall get_cText1();
  void            __fastcall set_cText2(short Value);
  short           __fastcall get_cText2();
  void            __fastcall set_cText3(short Value);
  short           __fastcall get_cText3();
  LPDISPATCH      __fastcall GetpText();
  TOLEBOOL        __fastcall SetpText(LPDISPATCH pText);
  TOLEBOOL        __fastcall Init();
  TOLEBOOL        __fastcall InitEx(long style);

  __property   long            style = {read = get_style, write = set_style};
  __property   short           type = {read = get_type, write = set_type};
  __property   short           around = {read = get_around, write = set_around};
  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   double          ang = {read = get_ang, write = set_ang};
  __property   short           cText0 = {read = get_cText0, write = set_cText0};
  __property   short           cText1 = {read = get_cText1, write = set_cText1};
  __property   short           cText2 = {read = get_cText2, write = set_cText2};
  __property   short           cText3 = {read = get_cText3, write = set_cText3};
};
typedef ksRoughParDispT<ksRoughPar> ksRoughParDisp;

// *********************************************************************//
// DispIntf:  ksRoughParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E36-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksRoughParamDispT : public TAutoDriver<ksRoughParam>
{
public:
  ksRoughParamDispT(){}

  ksRoughParamDispT(ksRoughParam *pintf)
  {
    TAutoDriver<ksRoughParam>::Bind(pintf, false);
  }

  ksRoughParamDispT(ksRoughParamPtr pintf)
  {
    TAutoDriver<ksRoughParam>::Bind(pintf, true);
  }

  ksRoughParamDispT& operator=(ksRoughParam *pintf)
  {
    TAutoDriver<ksRoughParam>::Bind(pintf, false);
    return *this;
  }

  ksRoughParamDispT& operator=(ksRoughParamPtr pintf)
  {
    TAutoDriver<ksRoughParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_RoughParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_RoughParam);
  }

  LPDISPATCH      __fastcall GetrPar();
  TOLEBOOL        __fastcall SetrPar(LPDISPATCH par);
  LPDISPATCH      __fastcall GetshPar();
  TOLEBOOL        __fastcall SetshPar(LPDISPATCH shPar);

};
typedef ksRoughParamDispT<ksRoughParam> ksRoughParamDisp;

// *********************************************************************//
// DispIntf:  ksChar255
// Flags:     (4096) Dispatchable
// GUID:      {3F715E39-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksChar255DispT : public TAutoDriver<ksChar255>
{
public:
  ksChar255DispT(){}

  ksChar255DispT(ksChar255 *pintf)
  {
    TAutoDriver<ksChar255>::Bind(pintf, false);
  }

  ksChar255DispT(ksChar255Ptr pintf)
  {
    TAutoDriver<ksChar255>::Bind(pintf, true);
  }

  ksChar255DispT& operator=(ksChar255 *pintf)
  {
    TAutoDriver<ksChar255>::Bind(pintf, false);
    return *this;
  }

  ksChar255DispT& operator=(ksChar255Ptr pintf)
  {
    TAutoDriver<ksChar255>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Char255));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Char255);
  }

  void            __fastcall set_str(BSTR Value);
  BSTR            __fastcall get_str();
  TOLEBOOL        __fastcall Init();

  __property   BSTR            str = {read = get_str, write = set_str};
};
typedef ksChar255DispT<ksChar255> ksChar255Disp;

// *********************************************************************//
// DispIntf:  ksLeaderParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E40-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksLeaderParamDispT : public TAutoDriver<ksLeaderParam>
{
public:
  ksLeaderParamDispT(){}

  ksLeaderParamDispT(ksLeaderParam *pintf)
  {
    TAutoDriver<ksLeaderParam>::Bind(pintf, false);
  }

  ksLeaderParamDispT(ksLeaderParamPtr pintf)
  {
    TAutoDriver<ksLeaderParam>::Bind(pintf, true);
  }

  ksLeaderParamDispT& operator=(ksLeaderParam *pintf)
  {
    TAutoDriver<ksLeaderParam>::Bind(pintf, false);
    return *this;
  }

  ksLeaderParamDispT& operator=(ksLeaderParamPtr pintf)
  {
    TAutoDriver<ksLeaderParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_leaderParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_leaderParam);
  }

  void            __fastcall set_x(double Value);
  double          __fastcall get_x();
  void            __fastcall set_y(double Value);
  double          __fastcall get_y();
  void            __fastcall set_arrowType(short Value);
  short           __fastcall get_arrowType();
  void            __fastcall set_dirX(long Value);
  long            __fastcall get_dirX();
  void            __fastcall set_signType(short Value);
  short           __fastcall get_signType();
  void            __fastcall set_around(short Value);
  short           __fastcall get_around();
  void            __fastcall set_cText0(short Value);
  short           __fastcall get_cText0();
  void            __fastcall set_cText1(short Value);
  short           __fastcall get_cText1();
  void            __fastcall set_cText2(short Value);
  short           __fastcall get_cText2();
  void            __fastcall set_cText3(short Value);
  short           __fastcall get_cText3();
  LPDISPATCH      __fastcall GetpTextline();
  TOLEBOOL        __fastcall SetpTextline(LPDISPATCH pTextLine);
  LPDISPATCH      __fastcall GetpPolyline();
  TOLEBOOL        __fastcall SetpPolyline(LPDISPATCH pPolyline);
  TOLEBOOL        __fastcall Init();

  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   short           arrowType = {read = get_arrowType, write = set_arrowType};
  __property   long            dirX = {read = get_dirX, write = set_dirX};
  __property   short           signType = {read = get_signType, write = set_signType};
  __property   short           around = {read = get_around, write = set_around};
  __property   short           cText0 = {read = get_cText0, write = set_cText0};
  __property   short           cText1 = {read = get_cText1, write = set_cText1};
  __property   short           cText2 = {read = get_cText2, write = set_cText2};
  __property   short           cText3 = {read = get_cText3, write = set_cText3};
};
typedef ksLeaderParamDispT<ksLeaderParam> ksLeaderParamDisp;

// *********************************************************************//
// DispIntf:  ksPosLeaderParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E43-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksPosLeaderParamDispT : public TAutoDriver<ksPosLeaderParam>
{
public:
  ksPosLeaderParamDispT(){}

  ksPosLeaderParamDispT(ksPosLeaderParam *pintf)
  {
    TAutoDriver<ksPosLeaderParam>::Bind(pintf, false);
  }

  ksPosLeaderParamDispT(ksPosLeaderParamPtr pintf)
  {
    TAutoDriver<ksPosLeaderParam>::Bind(pintf, true);
  }

  ksPosLeaderParamDispT& operator=(ksPosLeaderParam *pintf)
  {
    TAutoDriver<ksPosLeaderParam>::Bind(pintf, false);
    return *this;
  }

  ksPosLeaderParamDispT& operator=(ksPosLeaderParamPtr pintf)
  {
    TAutoDriver<ksPosLeaderParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_posLeaderParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_posLeaderParam);
  }

  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  void            __fastcall set_x(double Value);
  double          __fastcall get_x();
  void            __fastcall set_y(double Value);
  double          __fastcall get_y();
  void            __fastcall set_arrowType(short Value);
  short           __fastcall get_arrowType();
  void            __fastcall set_dirX(long Value);
  long            __fastcall get_dirX();
  void            __fastcall set_dirY(long Value);
  long            __fastcall get_dirY();
  LPDISPATCH      __fastcall GetpTextline();
  TOLEBOOL        __fastcall SetpTextline(LPDISPATCH textline);
  LPDISPATCH      __fastcall GetpPolyline();
  TOLEBOOL        __fastcall SetpPolyline(LPDISPATCH polyline);
  TOLEBOOL        __fastcall Init();

  __property   long            style = {read = get_style, write = set_style};
  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   short           arrowType = {read = get_arrowType, write = set_arrowType};
  __property   long            dirX = {read = get_dirX, write = set_dirX};
  __property   long            dirY = {read = get_dirY, write = set_dirY};
};
typedef ksPosLeaderParamDispT<ksPosLeaderParam> ksPosLeaderParamDisp;

// *********************************************************************//
// DispIntf:  ksBrandLeaderParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E46-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksBrandLeaderParamDispT : public TAutoDriver<ksBrandLeaderParam>
{
public:
  ksBrandLeaderParamDispT(){}

  ksBrandLeaderParamDispT(ksBrandLeaderParam *pintf)
  {
    TAutoDriver<ksBrandLeaderParam>::Bind(pintf, false);
  }

  ksBrandLeaderParamDispT(ksBrandLeaderParamPtr pintf)
  {
    TAutoDriver<ksBrandLeaderParam>::Bind(pintf, true);
  }

  ksBrandLeaderParamDispT& operator=(ksBrandLeaderParam *pintf)
  {
    TAutoDriver<ksBrandLeaderParam>::Bind(pintf, false);
    return *this;
  }

  ksBrandLeaderParamDispT& operator=(ksBrandLeaderParamPtr pintf)
  {
    TAutoDriver<ksBrandLeaderParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_brandLeaderParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_brandLeaderParam);
  }

  void            __fastcall set_dirX(long Value);
  long            __fastcall get_dirX();
  void            __fastcall set_x(double Value);
  double          __fastcall get_x();
  void            __fastcall set_y(double Value);
  double          __fastcall get_y();
  void            __fastcall set_arrowType(short Value);
  short           __fastcall get_arrowType();
  void            __fastcall set_style1(long Value);
  long            __fastcall get_style1();
  void            __fastcall set_style2(long Value);
  long            __fastcall get_style2();
  void            __fastcall set_cText0(short Value);
  short           __fastcall get_cText0();
  void            __fastcall set_cText1(short Value);
  short           __fastcall get_cText1();
  void            __fastcall set_cText2(long Value);
  long            __fastcall get_cText2();
  LPDISPATCH      __fastcall GetpTextline();
  TOLEBOOL        __fastcall SetpTextline(LPDISPATCH pTextLine);
  LPDISPATCH      __fastcall GetpPolyline();
  TOLEBOOL        __fastcall SetpPolyline(LPDISPATCH pPolyline);
  TOLEBOOL        __fastcall Init();

  __property   long            dirX = {read = get_dirX, write = set_dirX};
  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   short           arrowType = {read = get_arrowType, write = set_arrowType};
  __property   long            style1 = {read = get_style1, write = set_style1};
  __property   long            style2 = {read = get_style2, write = set_style2};
  __property   short           cText0 = {read = get_cText0, write = set_cText0};
  __property   short           cText1 = {read = get_cText1, write = set_cText1};
  __property   long            cText2 = {read = get_cText2, write = set_cText2};
};
typedef ksBrandLeaderParamDispT<ksBrandLeaderParam> ksBrandLeaderParamDisp;

// *********************************************************************//
// DispIntf:  ksMarkerLeaderParam
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E341-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksMarkerLeaderParamDispT : public TAutoDriver<ksMarkerLeaderParam>
{
public:
  ksMarkerLeaderParamDispT(){}

  ksMarkerLeaderParamDispT(ksMarkerLeaderParam *pintf)
  {
    TAutoDriver<ksMarkerLeaderParam>::Bind(pintf, false);
  }

  ksMarkerLeaderParamDispT(ksMarkerLeaderParamPtr pintf)
  {
    TAutoDriver<ksMarkerLeaderParam>::Bind(pintf, true);
  }

  ksMarkerLeaderParamDispT& operator=(ksMarkerLeaderParam *pintf)
  {
    TAutoDriver<ksMarkerLeaderParam>::Bind(pintf, false);
    return *this;
  }

  ksMarkerLeaderParamDispT& operator=(ksMarkerLeaderParamPtr pintf)
  {
    TAutoDriver<ksMarkerLeaderParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_markerLeaderParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_markerLeaderParam);
  }

  void            __fastcall set_x(double Value);
  double          __fastcall get_x();
  void            __fastcall set_y(double Value);
  double          __fastcall get_y();
  void            __fastcall set_arrowType(short Value);
  short           __fastcall get_arrowType();
  void            __fastcall set_style1(long Value);
  long            __fastcall get_style1();
  void            __fastcall set_style2(long Value);
  long            __fastcall get_style2();
  void            __fastcall set_cText0(short Value);
  short           __fastcall get_cText0();
  void            __fastcall set_cText1(short Value);
  short           __fastcall get_cText1();
  void            __fastcall set_cText2(short Value);
  short           __fastcall get_cText2();
  LPDISPATCH      __fastcall GetpTextline();
  TOLEBOOL        __fastcall SetpTextline(LPDISPATCH pTextLine);
  LPDISPATCH      __fastcall GetpPolyline();
  TOLEBOOL        __fastcall SetpPolyline(LPDISPATCH pPolyline);
  TOLEBOOL        __fastcall Init();

  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   short           arrowType = {read = get_arrowType, write = set_arrowType};
  __property   long            style1 = {read = get_style1, write = set_style1};
  __property   long            style2 = {read = get_style2, write = set_style2};
  __property   short           cText0 = {read = get_cText0, write = set_cText0};
  __property   short           cText1 = {read = get_cText1, write = set_cText1};
  __property   short           cText2 = {read = get_cText2, write = set_cText2};
};
typedef ksMarkerLeaderParamDispT<ksMarkerLeaderParam> ksMarkerLeaderParamDisp;

// *********************************************************************//
// DispIntf:  ksType1
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E344-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksType1DispT : public TAutoDriver<ksType1>
{
public:
  ksType1DispT(){}

  ksType1DispT(ksType1 *pintf)
  {
    TAutoDriver<ksType1>::Bind(pintf, false);
  }

  ksType1DispT(ksType1Ptr pintf)
  {
    TAutoDriver<ksType1>::Bind(pintf, true);
  }

  ksType1DispT& operator=(ksType1 *pintf)
  {
    TAutoDriver<ksType1>::Bind(pintf, false);
    return *this;
  }

  ksType1DispT& operator=(ksType1Ptr pintf)
  {
    TAutoDriver<ksType1>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Type1));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Type1);
  }

  void            __fastcall set_xBase(double Value);
  double          __fastcall get_xBase();
  void            __fastcall set_yBase(double Value);
  double          __fastcall get_yBase();
  void            __fastcall set_scale_(double Value);
  double          __fastcall get_scale_();
  void            __fastcall set_angle(double Value);
  double          __fastcall get_angle();
  void            __fastcall set_gr(long Value);
  long            __fastcall get_gr();
  TOLEBOOL        __fastcall Init();

  __property   double          xBase = {read = get_xBase, write = set_xBase};
  __property   double          yBase = {read = get_yBase, write = set_yBase};
  __property   double          scale_ = {read = get_scale_, write = set_scale_};
  __property   double          angle = {read = get_angle, write = set_angle};
  __property   long            gr = {read = get_gr, write = set_gr};
};
typedef ksType1DispT<ksType1> ksType1Disp;

// *********************************************************************//
// DispIntf:  ksType2
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E347-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksType2DispT : public TAutoDriver<ksType2>
{
public:
  ksType2DispT(){}

  ksType2DispT(ksType2 *pintf)
  {
    TAutoDriver<ksType2>::Bind(pintf, false);
  }

  ksType2DispT(ksType2Ptr pintf)
  {
    TAutoDriver<ksType2>::Bind(pintf, true);
  }

  ksType2DispT& operator=(ksType2 *pintf)
  {
    TAutoDriver<ksType2>::Bind(pintf, false);
    return *this;
  }

  ksType2DispT& operator=(ksType2Ptr pintf)
  {
    TAutoDriver<ksType2>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Type2));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Type2);
  }

  void            __fastcall set_xBase(double Value);
  double          __fastcall get_xBase();
  void            __fastcall set_yBase(double Value);
  double          __fastcall get_yBase();
  TOLEBOOL        __fastcall Init();

  __property   double          xBase = {read = get_xBase, write = set_xBase};
  __property   double          yBase = {read = get_yBase, write = set_yBase};
};
typedef ksType2DispT<ksType2> ksType2Disp;

// *********************************************************************//
// DispIntf:  ksType3
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E34A-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksType3DispT : public TAutoDriver<ksType3>
{
public:
  ksType3DispT(){}

  ksType3DispT(ksType3 *pintf)
  {
    TAutoDriver<ksType3>::Bind(pintf, false);
  }

  ksType3DispT(ksType3Ptr pintf)
  {
    TAutoDriver<ksType3>::Bind(pintf, true);
  }

  ksType3DispT& operator=(ksType3 *pintf)
  {
    TAutoDriver<ksType3>::Bind(pintf, false);
    return *this;
  }

  ksType3DispT& operator=(ksType3Ptr pintf)
  {
    TAutoDriver<ksType3>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Type3));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Type3);
  }

  void            __fastcall set_xBase(double Value);
  double          __fastcall get_xBase();
  void            __fastcall set_yBase(double Value);
  double          __fastcall get_yBase();
  void            __fastcall set_angle(double Value);
  double          __fastcall get_angle();
  TOLEBOOL        __fastcall Init();

  __property   double          xBase = {read = get_xBase, write = set_xBase};
  __property   double          yBase = {read = get_yBase, write = set_yBase};
  __property   double          angle = {read = get_angle, write = set_angle};
};
typedef ksType3DispT<ksType3> ksType3Disp;

// *********************************************************************//
// DispIntf:  ksType5
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E34D-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksType5DispT : public TAutoDriver<ksType5>
{
public:
  ksType5DispT(){}

  ksType5DispT(ksType5 *pintf)
  {
    TAutoDriver<ksType5>::Bind(pintf, false);
  }

  ksType5DispT(ksType5Ptr pintf)
  {
    TAutoDriver<ksType5>::Bind(pintf, true);
  }

  ksType5DispT& operator=(ksType5 *pintf)
  {
    TAutoDriver<ksType5>::Bind(pintf, false);
    return *this;
  }

  ksType5DispT& operator=(ksType5Ptr pintf)
  {
    TAutoDriver<ksType5>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Type5));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Type5);
  }

  void            __fastcall set_xBase(double Value);
  double          __fastcall get_xBase();
  void            __fastcall set_yBase(double Value);
  double          __fastcall get_yBase();
  void            __fastcall set_angle(double Value);
  double          __fastcall get_angle();
  void            __fastcall set_horizon(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_horizon();
  TOLEBOOL        __fastcall Init();

  __property   double          xBase = {read = get_xBase, write = set_xBase};
  __property   double          yBase = {read = get_yBase, write = set_yBase};
  __property   double          angle = {read = get_angle, write = set_angle};
  __property   TOLEBOOL        horizon = {read = get_horizon, write = set_horizon};
};
typedef ksType5DispT<ksType5> ksType5Disp;

// *********************************************************************//
// DispIntf:  ksType6
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E350-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksType6DispT : public TAutoDriver<ksType6>
{
public:
  ksType6DispT(){}

  ksType6DispT(ksType6 *pintf)
  {
    TAutoDriver<ksType6>::Bind(pintf, false);
  }

  ksType6DispT(ksType6Ptr pintf)
  {
    TAutoDriver<ksType6>::Bind(pintf, true);
  }

  ksType6DispT& operator=(ksType6 *pintf)
  {
    TAutoDriver<ksType6>::Bind(pintf, false);
    return *this;
  }

  ksType6DispT& operator=(ksType6Ptr pintf)
  {
    TAutoDriver<ksType6>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Type6));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Type6);
  }

  void            __fastcall set_gr(long Value);
  long            __fastcall get_gr();
  TOLEBOOL        __fastcall Init();

  __property   long            gr = {read = get_gr, write = set_gr};
};
typedef ksType6DispT<ksType6> ksType6Disp;

// *********************************************************************//
// DispIntf:  ksPhantom
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E353-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksPhantomDispT : public TAutoDriver<ksPhantom>
{
public:
  ksPhantomDispT(){}

  ksPhantomDispT(ksPhantom *pintf)
  {
    TAutoDriver<ksPhantom>::Bind(pintf, false);
  }

  ksPhantomDispT(ksPhantomPtr pintf)
  {
    TAutoDriver<ksPhantom>::Bind(pintf, true);
  }

  ksPhantomDispT& operator=(ksPhantom *pintf)
  {
    TAutoDriver<ksPhantom>::Bind(pintf, false);
    return *this;
  }

  ksPhantomDispT& operator=(ksPhantomPtr pintf)
  {
    TAutoDriver<ksPhantom>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_phantom));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_phantom);
  }

  void            __fastcall set_phantom(short Value);
  short           __fastcall get_phantom();
  LPDISPATCH      __fastcall GetPhantomParam();
  TOLEBOOL        __fastcall Init();

  __property   short           phantom = {read = get_phantom, write = set_phantom};
};
typedef ksPhantomDispT<ksPhantom> ksPhantomDisp;

// *********************************************************************//
// DispIntf:  ksRequestInfo
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E356-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksRequestInfoDispT : public TAutoDriver<ksRequestInfo>
{
public:
  ksRequestInfoDispT(){}

  ksRequestInfoDispT(ksRequestInfo *pintf)
  {
    TAutoDriver<ksRequestInfo>::Bind(pintf, false);
  }

  ksRequestInfoDispT(ksRequestInfoPtr pintf)
  {
    TAutoDriver<ksRequestInfo>::Bind(pintf, true);
  }

  ksRequestInfoDispT& operator=(ksRequestInfo *pintf)
  {
    TAutoDriver<ksRequestInfo>::Bind(pintf, false);
    return *this;
  }

  ksRequestInfoDispT& operator=(ksRequestInfoPtr pintf)
  {
    TAutoDriver<ksRequestInfo>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_RequestInfo));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_RequestInfo);
  }

  void            __fastcall set_prompt(BSTR Value);
  BSTR            __fastcall get_prompt();
  void            __fastcall set_title(BSTR Value);
  BSTR            __fastcall get_title();
  void            __fastcall set_commandsString(BSTR Value);
  BSTR            __fastcall get_commandsString();
  void            __fastcall set_cursor(BSTR Value);
  BSTR            __fastcall get_cursor();
  void            __fastcall set_dynamic(long Value);
  long            __fastcall get_dynamic();
  void            __fastcall set_commInstance(long Value);
  long            __fastcall get_commInstance();
  void            __fastcall set_menuId(long Value);
  long            __fastcall get_menuId();
  void            __fastcall set_titleId(long Value);
  long            __fastcall get_titleId();
  void            __fastcall set_promptId(long Value);
  long            __fastcall get_promptId();
  void            __fastcall set_cursorId(long Value);
  long            __fastcall get_cursorId();
  BSTR            __fastcall GetCallBackC();
  TOLEBOOL        __fastcall SetCallBackC(BSTR methodName, long hInst, LPDISPATCH dispatchOCX);
  BSTR            __fastcall GetCallBackP();
  TOLEBOOL        __fastcall SetCallBackP(BSTR methodName, long hInst, LPDISPATCH dispatchOCX);
  BSTR            __fastcall GetCallBackCm();
  TOLEBOOL        __fastcall SetCallBackCm(BSTR methodName, long hInst, LPDISPATCH dispatchOCX);
  TOLEBOOL        __fastcall Init();

  __property   BSTR            prompt = {read = get_prompt, write = set_prompt};
  __property   BSTR            title = {read = get_title, write = set_title};
  __property   BSTR            commandsString = {read = get_commandsString, write = set_commandsString};
  __property   BSTR            cursor = {read = get_cursor, write = set_cursor};
  __property   long            dynamic = {read = get_dynamic, write = set_dynamic};
  __property   long            commInstance = {read = get_commInstance, write = set_commInstance};
  __property   long            menuId = {read = get_menuId, write = set_menuId};
  __property   long            titleId = {read = get_titleId, write = set_titleId};
  __property   long            promptId = {read = get_promptId, write = set_promptId};
  __property   long            cursorId = {read = get_cursorId, write = set_cursorId};
};
typedef ksRequestInfoDispT<ksRequestInfo> ksRequestInfoDisp;

// *********************************************************************//
// DispIntf:  ksViewPointerParam
// Flags:     (4096) Dispatchable
// GUID:      {CD1C0144-98DC-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksViewPointerParamDispT : public TAutoDriver<ksViewPointerParam>
{
public:
  ksViewPointerParamDispT(){}

  ksViewPointerParamDispT(ksViewPointerParam *pintf)
  {
    TAutoDriver<ksViewPointerParam>::Bind(pintf, false);
  }

  ksViewPointerParamDispT(ksViewPointerParamPtr pintf)
  {
    TAutoDriver<ksViewPointerParam>::Bind(pintf, true);
  }

  ksViewPointerParamDispT& operator=(ksViewPointerParam *pintf)
  {
    TAutoDriver<ksViewPointerParam>::Bind(pintf, false);
    return *this;
  }

  ksViewPointerParamDispT& operator=(ksViewPointerParamPtr pintf)
  {
    TAutoDriver<ksViewPointerParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ViewPointerParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ViewPointerParam);
  }

  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  void            __fastcall set_x1(double Value);
  double          __fastcall get_x1();
  void            __fastcall set_y1(double Value);
  double          __fastcall get_y1();
  void            __fastcall set_x2(double Value);
  double          __fastcall get_x2();
  void            __fastcall set_y2(double Value);
  double          __fastcall get_y2();
  void            __fastcall set_xt(double Value);
  double          __fastcall get_xt();
  void            __fastcall set_yt(double Value);
  double          __fastcall get_yt();
  void            __fastcall set_type(short Value);
  short           __fastcall get_type();
  void            __fastcall set_str(BSTR Value);
  BSTR            __fastcall get_str();
  LPDISPATCH      __fastcall GetpTextline();
  TOLEBOOL        __fastcall SetpTextline(LPDISPATCH pTextLine);
  TOLEBOOL        __fastcall Init();

  __property   long            style = {read = get_style, write = set_style};
  __property   double          x1 = {read = get_x1, write = set_x1};
  __property   double          y1 = {read = get_y1, write = set_y1};
  __property   double          x2 = {read = get_x2, write = set_x2};
  __property   double          y2 = {read = get_y2, write = set_y2};
  __property   double          xt = {read = get_xt, write = set_xt};
  __property   double          yt = {read = get_yt, write = set_yt};
  __property   short           type = {read = get_type, write = set_type};
  __property   BSTR            str = {read = get_str, write = set_str};
};
typedef ksViewPointerParamDispT<ksViewPointerParam> ksViewPointerParamDisp;

// *********************************************************************//
// DispIntf:  ksCutLineParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE81-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksCutLineParamDispT : public TAutoDriver<ksCutLineParam>
{
public:
  ksCutLineParamDispT(){}

  ksCutLineParamDispT(ksCutLineParam *pintf)
  {
    TAutoDriver<ksCutLineParam>::Bind(pintf, false);
  }

  ksCutLineParamDispT(ksCutLineParamPtr pintf)
  {
    TAutoDriver<ksCutLineParam>::Bind(pintf, true);
  }

  ksCutLineParamDispT& operator=(ksCutLineParam *pintf)
  {
    TAutoDriver<ksCutLineParam>::Bind(pintf, false);
    return *this;
  }

  ksCutLineParamDispT& operator=(ksCutLineParamPtr pintf)
  {
    TAutoDriver<ksCutLineParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_CutLineParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_CutLineParam);
  }

  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  void            __fastcall set_right(short Value);
  short           __fastcall get_right();
  void            __fastcall set_x1(double Value);
  double          __fastcall get_x1();
  void            __fastcall set_y1(double Value);
  double          __fastcall get_y1();
  void            __fastcall set_x2(double Value);
  double          __fastcall get_x2();
  void            __fastcall set_y2(double Value);
  double          __fastcall get_y2();
  void            __fastcall set_type(short Value);
  short           __fastcall get_type();
  void            __fastcall set_str(BSTR Value);
  BSTR            __fastcall get_str();
  LPDISPATCH      __fastcall GetpTextline();
  TOLEBOOL        __fastcall SetpTextline(LPDISPATCH pTextLine);
  LPDISPATCH      __fastcall GetpMathPoint();
  TOLEBOOL        __fastcall SetpMathPoint(LPDISPATCH pMathPoint);
  TOLEBOOL        __fastcall Init();

  __property   long            style = {read = get_style, write = set_style};
  __property   short           right = {read = get_right, write = set_right};
  __property   double          x1 = {read = get_x1, write = set_x1};
  __property   double          y1 = {read = get_y1, write = set_y1};
  __property   double          x2 = {read = get_x2, write = set_x2};
  __property   double          y2 = {read = get_y2, write = set_y2};
  __property   short           type = {read = get_type, write = set_type};
  __property   BSTR            str = {read = get_str, write = set_str};
};
typedef ksCutLineParamDispT<ksCutLineParam> ksCutLineParamDisp;

// *********************************************************************//
// DispIntf:  ksToleranceBranch
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE84-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksToleranceBranchDispT : public TAutoDriver<ksToleranceBranch>
{
public:
  ksToleranceBranchDispT(){}

  ksToleranceBranchDispT(ksToleranceBranch *pintf)
  {
    TAutoDriver<ksToleranceBranch>::Bind(pintf, false);
  }

  ksToleranceBranchDispT(ksToleranceBranchPtr pintf)
  {
    TAutoDriver<ksToleranceBranch>::Bind(pintf, true);
  }

  ksToleranceBranchDispT& operator=(ksToleranceBranch *pintf)
  {
    TAutoDriver<ksToleranceBranch>::Bind(pintf, false);
    return *this;
  }

  ksToleranceBranchDispT& operator=(ksToleranceBranchPtr pintf)
  {
    TAutoDriver<ksToleranceBranch>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ToleranceBranch));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ToleranceBranch);
  }

  void            __fastcall set_arrowType(short Value);
  short           __fastcall get_arrowType();
  void            __fastcall set_tCorner(short Value);
  short           __fastcall get_tCorner();
  LPDISPATCH      __fastcall GetpMathPoint();
  TOLEBOOL        __fastcall SetpMathPoint(LPDISPATCH pMathPoint);
  TOLEBOOL        __fastcall Init();

  __property   short           arrowType = {read = get_arrowType, write = set_arrowType};
  __property   short           tCorner = {read = get_tCorner, write = set_tCorner};
};
typedef ksToleranceBranchDispT<ksToleranceBranch> ksToleranceBranchDisp;

// *********************************************************************//
// DispIntf:  ksToleranceParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE87-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksToleranceParamDispT : public TAutoDriver<ksToleranceParam>
{
public:
  ksToleranceParamDispT(){}

  ksToleranceParamDispT(ksToleranceParam *pintf)
  {
    TAutoDriver<ksToleranceParam>::Bind(pintf, false);
  }

  ksToleranceParamDispT(ksToleranceParamPtr pintf)
  {
    TAutoDriver<ksToleranceParam>::Bind(pintf, true);
  }

  ksToleranceParamDispT& operator=(ksToleranceParam *pintf)
  {
    TAutoDriver<ksToleranceParam>::Bind(pintf, false);
    return *this;
  }

  ksToleranceParamDispT& operator=(ksToleranceParamPtr pintf)
  {
    TAutoDriver<ksToleranceParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ToleranceParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ToleranceParam);
  }

  void            __fastcall set_tBase(short Value);
  short           __fastcall get_tBase();
  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  void            __fastcall set_x(double Value);
  double          __fastcall get_x();
  void            __fastcall set_y(double Value);
  double          __fastcall get_y();
  void            __fastcall set_type(short Value);
  short           __fastcall get_type();
  LPDISPATCH      __fastcall GetBranchArr();
  TOLEBOOL        __fastcall SetBranchArr(LPDISPATCH branchArr);
  TOLEBOOL        __fastcall Init();

  __property   short           tBase = {read = get_tBase, write = set_tBase};
  __property   long            style = {read = get_style, write = set_style};
  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   short           type = {read = get_type, write = set_type};
};
typedef ksToleranceParamDispT<ksToleranceParam> ksToleranceParamDisp;

// *********************************************************************//
// DispIntf:  ksSpcColumnParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE8A-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksSpcColumnParamDispT : public TAutoDriver<ksSpcColumnParam>
{
public:
  ksSpcColumnParamDispT(){}

  ksSpcColumnParamDispT(ksSpcColumnParam *pintf)
  {
    TAutoDriver<ksSpcColumnParam>::Bind(pintf, false);
  }

  ksSpcColumnParamDispT(ksSpcColumnParamPtr pintf)
  {
    TAutoDriver<ksSpcColumnParam>::Bind(pintf, true);
  }

  ksSpcColumnParamDispT& operator=(ksSpcColumnParam *pintf)
  {
    TAutoDriver<ksSpcColumnParam>::Bind(pintf, false);
    return *this;
  }

  ksSpcColumnParamDispT& operator=(ksSpcColumnParamPtr pintf)
  {
    TAutoDriver<ksSpcColumnParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_SpcColumnParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_SpcColumnParam);
  }

  void            __fastcall set_columnType(long Value);
  long            __fastcall get_columnType();
  void            __fastcall set_ispoln(long Value);
  long            __fastcall get_ispoln();
  void            __fastcall set_block(long Value);
  long            __fastcall get_block();
  void            __fastcall set_typeVal(long Value);
  long            __fastcall get_typeVal();
  void            __fastcall set_name(BSTR Value);
  BSTR            __fastcall get_name();
  TOLEBOOL        __fastcall Init();

  __property   long            columnType = {read = get_columnType, write = set_columnType};
  __property   long            ispoln = {read = get_ispoln, write = set_ispoln};
  __property   long            block = {read = get_block, write = set_block};
  __property   long            typeVal = {read = get_typeVal, write = set_typeVal};
  __property   BSTR            name = {read = get_name, write = set_name};
};
typedef ksSpcColumnParamDispT<ksSpcColumnParam> ksSpcColumnParamDisp;

// *********************************************************************//
// DispIntf:  ksRecordTypeAttrParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE8D-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksRecordTypeAttrParamDispT : public TAutoDriver<ksRecordTypeAttrParam>
{
public:
  ksRecordTypeAttrParamDispT(){}

  ksRecordTypeAttrParamDispT(ksRecordTypeAttrParam *pintf)
  {
    TAutoDriver<ksRecordTypeAttrParam>::Bind(pintf, false);
  }

  ksRecordTypeAttrParamDispT(ksRecordTypeAttrParamPtr pintf)
  {
    TAutoDriver<ksRecordTypeAttrParam>::Bind(pintf, true);
  }

  ksRecordTypeAttrParamDispT& operator=(ksRecordTypeAttrParam *pintf)
  {
    TAutoDriver<ksRecordTypeAttrParam>::Bind(pintf, false);
    return *this;
  }

  ksRecordTypeAttrParamDispT& operator=(ksRecordTypeAttrParamPtr pintf)
  {
    TAutoDriver<ksRecordTypeAttrParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_RecordTypeAttrParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_RecordTypeAttrParam);
  }

  BSTR            __fastcall get_attrLibName();
  long            __fastcall get_key1();
  long            __fastcall get_key2();
  long            __fastcall get_key3();
  long            __fastcall get_key4();
  TOLEBOOL        __fastcall Init();

  __property   BSTR            attrLibName = {read = get_attrLibName};
  __property   long            key1 = {read = get_key1};
  __property   long            key2 = {read = get_key2};
  __property   long            key3 = {read = get_key3};
  __property   long            key4 = {read = get_key4};
};
typedef ksRecordTypeAttrParamDispT<ksRecordTypeAttrParam> ksRecordTypeAttrParamDisp;

// *********************************************************************//
// DispIntf:  ksNumberTypeAttrParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE90-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksNumberTypeAttrParamDispT : public TAutoDriver<ksNumberTypeAttrParam>
{
public:
  ksNumberTypeAttrParamDispT(){}

  ksNumberTypeAttrParamDispT(ksNumberTypeAttrParam *pintf)
  {
    TAutoDriver<ksNumberTypeAttrParam>::Bind(pintf, false);
  }

  ksNumberTypeAttrParamDispT(ksNumberTypeAttrParamPtr pintf)
  {
    TAutoDriver<ksNumberTypeAttrParam>::Bind(pintf, true);
  }

  ksNumberTypeAttrParamDispT& operator=(ksNumberTypeAttrParam *pintf)
  {
    TAutoDriver<ksNumberTypeAttrParam>::Bind(pintf, false);
    return *this;
  }

  ksNumberTypeAttrParamDispT& operator=(ksNumberTypeAttrParamPtr pintf)
  {
    TAutoDriver<ksNumberTypeAttrParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_NumberTypeAttrParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_NumberTypeAttrParam);
  }

  double          __fastcall get_minValue();
  double          __fastcall get_maxValue();
  TOLEBOOL        __fastcall Init();

  __property   double          minValue = {read = get_minValue};
  __property   double          maxValue = {read = get_maxValue};
};
typedef ksNumberTypeAttrParamDispT<ksNumberTypeAttrParam> ksNumberTypeAttrParamDisp;

// *********************************************************************//
// DispIntf:  ksSpcStyleColumnParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE93-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksSpcStyleColumnParamDispT : public TAutoDriver<ksSpcStyleColumnParam>
{
public:
  ksSpcStyleColumnParamDispT(){}

  ksSpcStyleColumnParamDispT(ksSpcStyleColumnParam *pintf)
  {
    TAutoDriver<ksSpcStyleColumnParam>::Bind(pintf, false);
  }

  ksSpcStyleColumnParamDispT(ksSpcStyleColumnParamPtr pintf)
  {
    TAutoDriver<ksSpcStyleColumnParam>::Bind(pintf, true);
  }

  ksSpcStyleColumnParamDispT& operator=(ksSpcStyleColumnParam *pintf)
  {
    TAutoDriver<ksSpcStyleColumnParam>::Bind(pintf, false);
    return *this;
  }

  ksSpcStyleColumnParamDispT& operator=(ksSpcStyleColumnParamPtr pintf)
  {
    TAutoDriver<ksSpcStyleColumnParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_SpcStyleColumnParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_SpcStyleColumnParam);
  }

  BSTR            __fastcall get_nameColumn();
  long            __fastcall get_columnType();
  long            __fastcall get_ispoln();
  short           __fastcall get_edit();
  short           __fastcall get_createSum();
  short           __fastcall get_multiplyToCount();
  short           __fastcall get_useForSectionTitle();
  short           __fastcall get_textDn();
  long            __fastcall get_linkId();
  long            __fastcall get_typeVal();
  LPDISPATCH      __fastcall GetAdditionalParam();
  TOLEBOOL        __fastcall Init();

  __property   BSTR            nameColumn = {read = get_nameColumn};
  __property   long            columnType = {read = get_columnType};
  __property   long            ispoln = {read = get_ispoln};
  __property   short           edit = {read = get_edit};
  __property   short           createSum = {read = get_createSum};
  __property   short           multiplyToCount = {read = get_multiplyToCount};
  __property   short           useForSectionTitle = {read = get_useForSectionTitle};
  __property   short           textDn = {read = get_textDn};
  __property   long            linkId = {read = get_linkId};
  __property   long            typeVal = {read = get_typeVal};
};
typedef ksSpcStyleColumnParamDispT<ksSpcStyleColumnParam> ksSpcStyleColumnParamDisp;

// *********************************************************************//
// DispIntf:  ksSpcStyleSectionParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE96-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksSpcStyleSectionParamDispT : public TAutoDriver<ksSpcStyleSectionParam>
{
public:
  ksSpcStyleSectionParamDispT(){}

  ksSpcStyleSectionParamDispT(ksSpcStyleSectionParam *pintf)
  {
    TAutoDriver<ksSpcStyleSectionParam>::Bind(pintf, false);
  }

  ksSpcStyleSectionParamDispT(ksSpcStyleSectionParamPtr pintf)
  {
    TAutoDriver<ksSpcStyleSectionParam>::Bind(pintf, true);
  }

  ksSpcStyleSectionParamDispT& operator=(ksSpcStyleSectionParam *pintf)
  {
    TAutoDriver<ksSpcStyleSectionParam>::Bind(pintf, false);
    return *this;
  }

  ksSpcStyleSectionParamDispT& operator=(ksSpcStyleSectionParamPtr pintf)
  {
    TAutoDriver<ksSpcStyleSectionParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_SpcStyleSectionParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_SpcStyleSectionParam);
  }

  BSTR            __fastcall get_sectionName();
  long            __fastcall get_number();
  long            __fastcall get_sortColumnType();
  long            __fastcall get_sortIspoln();
  short           __fastcall get_dataType();
  long            __fastcall get_sortType();
  LPDISPATCH      __fastcall GetArrColumn();
  LPDISPATCH      __fastcall GetArrAdditionalColumn();
  TOLEBOOL        __fastcall Init();

  __property   BSTR            sectionName = {read = get_sectionName};
  __property   long            number = {read = get_number};
  __property   long            sortColumnType = {read = get_sortColumnType};
  __property   long            sortIspoln = {read = get_sortIspoln};
  __property   short           dataType = {read = get_dataType};
  __property   long            sortType = {read = get_sortType};
};
typedef ksSpcStyleSectionParamDispT<ksSpcStyleSectionParam> ksSpcStyleSectionParamDisp;

// *********************************************************************//
// DispIntf:  ksSpcSubSectionParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE99-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksSpcSubSectionParamDispT : public TAutoDriver<ksSpcSubSectionParam>
{
public:
  ksSpcSubSectionParamDispT(){}

  ksSpcSubSectionParamDispT(ksSpcSubSectionParam *pintf)
  {
    TAutoDriver<ksSpcSubSectionParam>::Bind(pintf, false);
  }

  ksSpcSubSectionParamDispT(ksSpcSubSectionParamPtr pintf)
  {
    TAutoDriver<ksSpcSubSectionParam>::Bind(pintf, true);
  }

  ksSpcSubSectionParamDispT& operator=(ksSpcSubSectionParam *pintf)
  {
    TAutoDriver<ksSpcSubSectionParam>::Bind(pintf, false);
    return *this;
  }

  ksSpcSubSectionParamDispT& operator=(ksSpcSubSectionParamPtr pintf)
  {
    TAutoDriver<ksSpcSubSectionParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_SpcSubSectionParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_SpcSubSectionParam);
  }

  BSTR            __fastcall get_name();
  long            __fastcall get_number();
  TOLEBOOL        __fastcall Init();

  __property   BSTR            name = {read = get_name};
  __property   long            number = {read = get_number};
};
typedef ksSpcSubSectionParamDispT<ksSpcSubSectionParam> ksSpcSubSectionParamDisp;

// *********************************************************************//
// DispIntf:  ksSpcTuningSectionParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE9C-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksSpcTuningSectionParamDispT : public TAutoDriver<ksSpcTuningSectionParam>
{
public:
  ksSpcTuningSectionParamDispT(){}

  ksSpcTuningSectionParamDispT(ksSpcTuningSectionParam *pintf)
  {
    TAutoDriver<ksSpcTuningSectionParam>::Bind(pintf, false);
  }

  ksSpcTuningSectionParamDispT(ksSpcTuningSectionParamPtr pintf)
  {
    TAutoDriver<ksSpcTuningSectionParam>::Bind(pintf, true);
  }

  ksSpcTuningSectionParamDispT& operator=(ksSpcTuningSectionParam *pintf)
  {
    TAutoDriver<ksSpcTuningSectionParam>::Bind(pintf, false);
    return *this;
  }

  ksSpcTuningSectionParamDispT& operator=(ksSpcTuningSectionParamPtr pintf)
  {
    TAutoDriver<ksSpcTuningSectionParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_SpcTuningSectionParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_SpcTuningSectionParam);
  }

  short           __fastcall get_subsectionOn();
  short           __fastcall get_geometryOn();
  short           __fastcall get_positionOn();
  short           __fastcall get_sortOn();
  short           __fastcall get_firstOnSheet();
  long            __fastcall get_rezervCount();
  long            __fastcall get_number();
  LPDISPATCH      __fastcall GetArrSubSection();
  TOLEBOOL        __fastcall Init();

  __property   short           subsectionOn = {read = get_subsectionOn};
  __property   short           geometryOn = {read = get_geometryOn};
  __property   short           positionOn = {read = get_positionOn};
  __property   short           sortOn = {read = get_sortOn};
  __property   short           firstOnSheet = {read = get_firstOnSheet};
  __property   long            rezervCount = {read = get_rezervCount};
  __property   long            number = {read = get_number};
};
typedef ksSpcTuningSectionParamDispT<ksSpcTuningSectionParam> ksSpcTuningSectionParamDisp;

// *********************************************************************//
// DispIntf:  ksSpcTuningStyleParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE9F-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksSpcTuningStyleParamDispT : public TAutoDriver<ksSpcTuningStyleParam>
{
public:
  ksSpcTuningStyleParamDispT(){}

  ksSpcTuningStyleParamDispT(ksSpcTuningStyleParam *pintf)
  {
    TAutoDriver<ksSpcTuningStyleParam>::Bind(pintf, false);
  }

  ksSpcTuningStyleParamDispT(ksSpcTuningStyleParamPtr pintf)
  {
    TAutoDriver<ksSpcTuningStyleParam>::Bind(pintf, true);
  }

  ksSpcTuningStyleParamDispT& operator=(ksSpcTuningStyleParam *pintf)
  {
    TAutoDriver<ksSpcTuningStyleParam>::Bind(pintf, false);
    return *this;
  }

  ksSpcTuningStyleParamDispT& operator=(ksSpcTuningStyleParamPtr pintf)
  {
    TAutoDriver<ksSpcTuningStyleParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_SpcTuningStyleParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_SpcTuningStyleParam);
  }

  void            __fastcall set_grToSP(short Value);
  short           __fastcall get_grToSP();
  void            __fastcall set_zoneCalc(short Value);
  short           __fastcall get_zoneCalc();
  void            __fastcall set_showSectionName(short Value);
  short           __fastcall get_showSectionName();
  void            __fastcall set_positionCalc(short Value);
  short           __fastcall get_positionCalc();
  void            __fastcall set_geometryDel(short Value);
  short           __fastcall get_geometryDel();
  void            __fastcall set_positionDel(short Value);
  short           __fastcall get_positionDel();
  void            __fastcall set_massCalc(short Value);
  short           __fastcall get_massCalc();
  void            __fastcall set_disableEmptyStr(short Value);
  short           __fastcall get_disableEmptyStr();
  void            __fastcall set_insertNull(short Value);
  short           __fastcall get_insertNull();
  void            __fastcall set_insertDash(short Value);
  short           __fastcall get_insertDash();
  void            __fastcall set_disableEmptyBlockStr(short Value);
  short           __fastcall get_disableEmptyBlockStr();
  void            __fastcall set_showInfoByDetBlock(short Value);
  short           __fastcall get_showInfoByDetBlock();
  void            __fastcall set_ispolnOn(short Value);
  short           __fastcall get_ispolnOn();
  void            __fastcall set_ispolnMarkFull(short Value);
  short           __fastcall get_ispolnMarkFull();
  void            __fastcall set_blocOnNewPage(short Value);
  short           __fastcall get_blocOnNewPage();
  void            __fastcall set_userTextStyle(short Value);
  short           __fastcall get_userTextStyle();
  void            __fastcall set_countIspoln(short Value);
  short           __fastcall get_countIspoln();
  void            __fastcall set_countBlock(short Value);
  short           __fastcall get_countBlock();
  void            __fastcall set_predefinedTextFileName(BSTR Value);
  BSTR            __fastcall get_predefinedTextFileName();
  void            __fastcall set_delSpcObjOnDelGeometry(short Value);
  short           __fastcall get_delSpcObjOnDelGeometry();
  void            __fastcall set_copySpcObjOnCopyGeometry(short Value);
  short           __fastcall get_copySpcObjOnCopyGeometry();
  LPDISPATCH      __fastcall GetSectionTextStyleFirst();
  LPDISPATCH      __fastcall GetSectionTextStyleNext();
  LPDISPATCH      __fastcall GetObjectTextStyle();
  LPDISPATCH      __fastcall GetArrSection();
  TOLEBOOL        __fastcall Init();
  TOLEBOOL        __fastcall SetSectionTextStyleFirst(LPDISPATCH style);
  TOLEBOOL        __fastcall SetSectionTextStyleNext(LPDISPATCH style);
  TOLEBOOL        __fastcall SetObjectTextStyle(LPDISPATCH style);
  TOLEBOOL        __fastcall SetArrSection(LPDISPATCH arr);

  __property   short           grToSP = {read = get_grToSP, write = set_grToSP};
  __property   short           zoneCalc = {read = get_zoneCalc, write = set_zoneCalc};
  __property   short           showSectionName = {read = get_showSectionName, write = set_showSectionName};
  __property   short           positionCalc = {read = get_positionCalc, write = set_positionCalc};
  __property   short           geometryDel = {read = get_geometryDel, write = set_geometryDel};
  __property   short           positionDel = {read = get_positionDel, write = set_positionDel};
  __property   short           massCalc = {read = get_massCalc, write = set_massCalc};
  __property   short           disableEmptyStr = {read = get_disableEmptyStr, write = set_disableEmptyStr};
  __property   short           insertNull = {read = get_insertNull, write = set_insertNull};
  __property   short           insertDash = {read = get_insertDash, write = set_insertDash};
  __property   short           disableEmptyBlockStr = {read = get_disableEmptyBlockStr, write = set_disableEmptyBlockStr};
  __property   short           showInfoByDetBlock = {read = get_showInfoByDetBlock, write = set_showInfoByDetBlock};
  __property   short           ispolnOn = {read = get_ispolnOn, write = set_ispolnOn};
  __property   short           ispolnMarkFull = {read = get_ispolnMarkFull, write = set_ispolnMarkFull};
  __property   short           blocOnNewPage = {read = get_blocOnNewPage, write = set_blocOnNewPage};
  __property   short           userTextStyle = {read = get_userTextStyle, write = set_userTextStyle};
  __property   short           countIspoln = {read = get_countIspoln, write = set_countIspoln};
  __property   short           countBlock = {read = get_countBlock, write = set_countBlock};
  __property   BSTR            predefinedTextFileName = {read = get_predefinedTextFileName, write = set_predefinedTextFileName};
  __property   short           delSpcObjOnDelGeometry = {read = get_delSpcObjOnDelGeometry, write = set_delSpcObjOnDelGeometry};
  __property   short           copySpcObjOnCopyGeometry = {read = get_copySpcObjOnCopyGeometry, write = set_copySpcObjOnCopyGeometry};
};
typedef ksSpcTuningStyleParamDispT<ksSpcTuningStyleParam> ksSpcTuningStyleParamDisp;

// *********************************************************************//
// DispIntf:  ksSpcStyleParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CEA2-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksSpcStyleParamDispT : public TAutoDriver<ksSpcStyleParam>
{
public:
  ksSpcStyleParamDispT(){}

  ksSpcStyleParamDispT(ksSpcStyleParam *pintf)
  {
    TAutoDriver<ksSpcStyleParam>::Bind(pintf, false);
  }

  ksSpcStyleParamDispT(ksSpcStyleParamPtr pintf)
  {
    TAutoDriver<ksSpcStyleParam>::Bind(pintf, true);
  }

  ksSpcStyleParamDispT& operator=(ksSpcStyleParam *pintf)
  {
    TAutoDriver<ksSpcStyleParam>::Bind(pintf, false);
    return *this;
  }

  ksSpcStyleParamDispT& operator=(ksSpcStyleParamPtr pintf)
  {
    TAutoDriver<ksSpcStyleParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_SpcStyleParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_SpcStyleParam);
  }

  BSTR            __fastcall get_layoutName1();
  BSTR            __fastcall get_layoutName2();
  long            __fastcall get_shtType1();
  long            __fastcall get_shtType2();
  short           __fastcall get_variant();
  short           __fastcall get_sectionOn();
  short           __fastcall get_type();
  LPDISPATCH      __fastcall GetTuning();
  LPDISPATCH      __fastcall GetArrColumn();
  LPDISPATCH      __fastcall GetArrAdditionalColumn();
  LPDISPATCH      __fastcall GetArrSection();
  LPDISPATCH      __fastcall GetSheetParam();
  TOLEBOOL        __fastcall Init();

  __property   BSTR            layoutName1 = {read = get_layoutName1};
  __property   BSTR            layoutName2 = {read = get_layoutName2};
  __property   long            shtType1 = {read = get_shtType1};
  __property   long            shtType2 = {read = get_shtType2};
  __property   short           variant = {read = get_variant};
  __property   short           sectionOn = {read = get_sectionOn};
  __property   short           type = {read = get_type};
};
typedef ksSpcStyleParamDispT<ksSpcStyleParam> ksSpcStyleParamDisp;

// *********************************************************************//
// DispIntf:  ksSpcDescrParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CEA5-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksSpcDescrParamDispT : public TAutoDriver<ksSpcDescrParam>
{
public:
  ksSpcDescrParamDispT(){}

  ksSpcDescrParamDispT(ksSpcDescrParam *pintf)
  {
    TAutoDriver<ksSpcDescrParam>::Bind(pintf, false);
  }

  ksSpcDescrParamDispT(ksSpcDescrParamPtr pintf)
  {
    TAutoDriver<ksSpcDescrParam>::Bind(pintf, true);
  }

  ksSpcDescrParamDispT& operator=(ksSpcDescrParam *pintf)
  {
    TAutoDriver<ksSpcDescrParam>::Bind(pintf, false);
    return *this;
  }

  ksSpcDescrParamDispT& operator=(ksSpcDescrParamPtr pintf)
  {
    TAutoDriver<ksSpcDescrParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_SpcDescrParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_SpcDescrParam);
  }

  void            __fastcall set_layoutName(BSTR Value);
  BSTR            __fastcall get_layoutName();
  void            __fastcall set_styleId(long Value);
  long            __fastcall get_styleId();
  void            __fastcall set_spcName(BSTR Value);
  BSTR            __fastcall get_spcName();
  TOLEBOOL        __fastcall Init();

  __property   BSTR            layoutName = {read = get_layoutName, write = set_layoutName};
  __property   long            styleId = {read = get_styleId, write = set_styleId};
  __property   BSTR            spcName = {read = get_spcName, write = set_spcName};
};
typedef ksSpcDescrParamDispT<ksSpcDescrParam> ksSpcDescrParamDisp;

// *********************************************************************//
// DispIntf:  ksDocAttachedSpcParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CEA8-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksDocAttachedSpcParamDispT : public TAutoDriver<ksDocAttachedSpcParam>
{
public:
  ksDocAttachedSpcParamDispT(){}

  ksDocAttachedSpcParamDispT(ksDocAttachedSpcParam *pintf)
  {
    TAutoDriver<ksDocAttachedSpcParam>::Bind(pintf, false);
  }

  ksDocAttachedSpcParamDispT(ksDocAttachedSpcParamPtr pintf)
  {
    TAutoDriver<ksDocAttachedSpcParam>::Bind(pintf, true);
  }

  ksDocAttachedSpcParamDispT& operator=(ksDocAttachedSpcParam *pintf)
  {
    TAutoDriver<ksDocAttachedSpcParam>::Bind(pintf, false);
    return *this;
  }

  ksDocAttachedSpcParamDispT& operator=(ksDocAttachedSpcParamPtr pintf)
  {
    TAutoDriver<ksDocAttachedSpcParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_DocAttachedSpcParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_DocAttachedSpcParam);
  }

  void            __fastcall set_fileName(BSTR Value);
  BSTR            __fastcall get_fileName();
  void            __fastcall set_comment(BSTR Value);
  BSTR            __fastcall get_comment();
  void            __fastcall set_transmit(short Value);
  short           __fastcall get_transmit();
  TOLEBOOL        __fastcall Init();

  __property   BSTR            fileName = {read = get_fileName, write = set_fileName};
  __property   BSTR            comment = {read = get_comment, write = set_comment};
  __property   short           transmit = {read = get_transmit, write = set_transmit};
};
typedef ksDocAttachedSpcParamDispT<ksDocAttachedSpcParam> ksDocAttachedSpcParamDisp;

// *********************************************************************//
// DispIntf:  ksSpcObjParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CEAB-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksSpcObjParamDispT : public TAutoDriver<ksSpcObjParam>
{
public:
  ksSpcObjParamDispT(){}

  ksSpcObjParamDispT(ksSpcObjParam *pintf)
  {
    TAutoDriver<ksSpcObjParam>::Bind(pintf, false);
  }

  ksSpcObjParamDispT(ksSpcObjParamPtr pintf)
  {
    TAutoDriver<ksSpcObjParam>::Bind(pintf, true);
  }

  ksSpcObjParamDispT& operator=(ksSpcObjParam *pintf)
  {
    TAutoDriver<ksSpcObjParam>::Bind(pintf, false);
    return *this;
  }

  ksSpcObjParamDispT& operator=(ksSpcObjParamPtr pintf)
  {
    TAutoDriver<ksSpcObjParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_SpcObjParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_SpcObjParam);
  }

  void            __fastcall set_blockNumber(long Value);
  long            __fastcall get_blockNumber();
  void            __fastcall set_numbSubSection(long Value);
  long            __fastcall get_numbSubSection();
  void            __fastcall set_firstOnSheet(short Value);
  short           __fastcall get_firstOnSheet();
  void            __fastcall set_posInc(short Value);
  short           __fastcall get_posInc();
  void            __fastcall set_draw(short Value);
  short           __fastcall get_draw();
  void            __fastcall set_posNotDraw(short Value);
  short           __fastcall get_posNotDraw();
  void            __fastcall set_ispoln(short Value);
  short           __fastcall get_ispoln();
  LPDISPATCH      __fastcall GetDocArr();
  TOLEBOOL        __fastcall SetDocArr(LPDISPATCH docArr);
  long            __fastcall get_typeObj();
  long            __fastcall get_numbSection();
  BSTR            __fastcall get_subSectionName();
  short           __fastcall get_insFrgType();
  short           __fastcall get_First();
  TOLEBOOL        __fastcall Init();

  __property   long            blockNumber = {read = get_blockNumber, write = set_blockNumber};
  __property   long            numbSubSection = {read = get_numbSubSection, write = set_numbSubSection};
  __property   short           firstOnSheet = {read = get_firstOnSheet, write = set_firstOnSheet};
  __property   short           posInc = {read = get_posInc, write = set_posInc};
  __property   short           draw = {read = get_draw, write = set_draw};
  __property   short           posNotDraw = {read = get_posNotDraw, write = set_posNotDraw};
  __property   short           ispoln = {read = get_ispoln, write = set_ispoln};
  __property   long            typeObj = {read = get_typeObj};
  __property   long            numbSection = {read = get_numbSection};
  __property   BSTR            subSectionName = {read = get_subSectionName};
  __property   short           insFrgType = {read = get_insFrgType};
  __property   short           First = {read = get_First};
};
typedef ksSpcObjParamDispT<ksSpcObjParam> ksSpcObjParamDisp;

// *********************************************************************//
// DispIntf:  ksLibStyle
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CEAE-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksLibStyleDispT : public TAutoDriver<ksLibStyle>
{
public:
  ksLibStyleDispT(){}

  ksLibStyleDispT(ksLibStyle *pintf)
  {
    TAutoDriver<ksLibStyle>::Bind(pintf, false);
  }

  ksLibStyleDispT(ksLibStylePtr pintf)
  {
    TAutoDriver<ksLibStyle>::Bind(pintf, true);
  }

  ksLibStyleDispT& operator=(ksLibStyle *pintf)
  {
    TAutoDriver<ksLibStyle>::Bind(pintf, false);
    return *this;
  }

  ksLibStyleDispT& operator=(ksLibStylePtr pintf)
  {
    TAutoDriver<ksLibStyle>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_LibStyle));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_LibStyle);
  }

  void            __fastcall set_fileName(BSTR Value);
  BSTR            __fastcall get_fileName();
  void            __fastcall set_styleNumber(long Value);
  long            __fastcall get_styleNumber();
  void            __fastcall set_typeAllocation(short Value);
  short           __fastcall get_typeAllocation();
  TOLEBOOL        __fastcall Init();

  __property   BSTR            fileName = {read = get_fileName, write = set_fileName};
  __property   long            styleNumber = {read = get_styleNumber, write = set_styleNumber};
  __property   short           typeAllocation = {read = get_typeAllocation, write = set_typeAllocation};
};
typedef ksLibStyleDispT<ksLibStyle> ksLibStyleDisp;

// *********************************************************************//
// DispIntf:  ksDataBaseObject
// Flags:     (4096) Dispatchable
// GUID:      {0981CD01-9A49-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksDataBaseObjectDispT : public TAutoDriver<ksDataBaseObject>
{
public:
  ksDataBaseObjectDispT(){}

  ksDataBaseObjectDispT(ksDataBaseObject *pintf)
  {
    TAutoDriver<ksDataBaseObject>::Bind(pintf, false);
  }

  ksDataBaseObjectDispT(ksDataBaseObjectPtr pintf)
  {
    TAutoDriver<ksDataBaseObject>::Bind(pintf, true);
  }

  ksDataBaseObjectDispT& operator=(ksDataBaseObject *pintf)
  {
    TAutoDriver<ksDataBaseObject>::Bind(pintf, false);
    return *this;
  }

  ksDataBaseObjectDispT& operator=(ksDataBaseObjectPtr pintf)
  {
    TAutoDriver<ksDataBaseObject>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_DataBaseObject));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_DataBaseObject);
  }

  long            __fastcall ksRelation(long db);
  TOLEBOOL        __fastcall ksEndRelation();
  long            __fastcall ksCreateDB(BSTR typeBD);
  long            __fastcall ksDeleteDB(long db);
  long            __fastcall ksConnectDB(long db, BSTR DBName);
  long            __fastcall ksDisconnectDB(long db);
  long            __fastcall ksFreeStatement(long db, long r, long fOption);
  long            __fastcall ksDoStatement(long db, long r, BSTR stSQL);
  long            __fastcall ksReadRecord(long db, long r, LPDISPATCH userPars);
  long            __fastcall ksCondition(long db, long r, BSTR stSQL);
  long            __fastcall ksRDouble(BSTR name);
  long            __fastcall ksRFloat(BSTR name);
  long            __fastcall ksRInt(BSTR name);
  long            __fastcall ksRLong(BSTR name);
  long            __fastcall ksRChar(BSTR name, long size, long type);
  long            __fastcall ksOpenTextFile(BSTR fileName);
  TOLEBOOL        __fastcall ksCloseTextFile(long F);
  BSTR            __fastcall ksReadStrFrFile(long F, long* res, long numb);
  BSTR            __fastcall ksGetTableName(long db, long* res, BSTR firstOrNext);
  BSTR            __fastcall ksGetColumnName(long db, BSTR tableName, long* res, BSTR firstOrNext);
  long            __fastcall ksIsODBCOkey();
  long            __fastcall ksRCharW(BSTR name, long size, long type);
  long            __fastcall ksOpenTextFileEx(BSTR fileName, long textFileType);

};
typedef ksDataBaseObjectDispT<ksDataBaseObject> ksDataBaseObjectDisp;

// *********************************************************************//
// DispIntf:  ksSpcDocumentNotify
// Flags:     (4096) Dispatchable
// GUID:      {1BD030F4-4058-4A86-9F4F-1AEEF8BE8D23}
// *********************************************************************//
template <class T>
class ksSpcDocumentNotifyDispT : public TAutoDriver<ksSpcDocumentNotify>
{
public:
  ksSpcDocumentNotifyDispT(){}

  void Attach(LPUNKNOWN punk)
  { m_Dispatch = static_cast<T*>(punk); }

  TOLEBOOL        __fastcall DocumentBeginAdd();
  TOLEBOOL        __fastcall DocumentAdd(BSTR docName);
  TOLEBOOL        __fastcall DocumentBeginRemove(BSTR docName);
  TOLEBOOL        __fastcall DocumentRemove(BSTR docName);
  TOLEBOOL        __fastcall SpcStyleBeginChange(BSTR libName, long numb);
  TOLEBOOL        __fastcall SpcStyleChange(BSTR libName, long numb);

};
typedef ksSpcDocumentNotifyDispT<ksSpcDocumentNotify> ksSpcDocumentNotifyDisp;

// *********************************************************************//
// DispIntf:  ksSpcDocument
// Flags:     (4096) Dispatchable
// GUID:      {51E74521-9A3A-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksSpcDocumentDispT : public TAutoDriver<ksSpcDocument>
{
public:
  ksSpcDocumentDispT(){}

  ksSpcDocumentDispT(ksSpcDocument *pintf)
  {
    TAutoDriver<ksSpcDocument>::Bind(pintf, false);
  }

  ksSpcDocumentDispT(ksSpcDocumentPtr pintf)
  {
    TAutoDriver<ksSpcDocument>::Bind(pintf, true);
  }

  ksSpcDocumentDispT& operator=(ksSpcDocument *pintf)
  {
    TAutoDriver<ksSpcDocument>::Bind(pintf, false);
    return *this;
  }

  ksSpcDocumentDispT& operator=(ksSpcDocumentPtr pintf)
  {
    TAutoDriver<ksSpcDocument>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_SpcDocument));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_SpcDocument);
  }

  void            __fastcall set_reference(long Value);
  long            __fastcall get_reference();
  LPDISPATCH      __fastcall GetStamp();
  LPDISPATCH      __fastcall GetSpecification();
  TOLEBOOL        __fastcall ksCloseDocument();
  LPDISPATCH      __fastcall ksGetSpcSheetSB();
  long            __fastcall ksGetSpcDocumentPagesCount();
  TOLEBOOL        __fastcall ksSaveDocument(BSTR fileName);
  TOLEBOOL        __fastcall ksCreateDocument(LPDISPATCH par);
  long            __fastcall ksDeleteObj(long ref);
  long            __fastcall ksSetSpcSheetSB(LPDISPATCH arr);
  long            __fastcall ksExistObj(long ref);
  TOLEBOOL        __fastcall ksOpenDocument(BSTR nameDoc, short regim);
  long            __fastcall ksGetObjParam(long ref, LPDISPATCH param, long parType/*[def,opt]*/);
  long            __fastcall ksSetObjParam(long ref, LPDISPATCH param, long parType/*[def,opt]*/);
  TOLEBOOL        __fastcall SaveAsToRasterFormat(BSTR fileName, LPDISPATCH par);
  LPDISPATCH      __fastcall RasterFormatParam();
  TOLEBOOL        __fastcall SaveAsToUncompressedRasterFormat(BSTR fileName, LPDISPATCH rasterPar);
  Kompas6api5_tlb::SpcDocumentNotifyPtr __fastcall GetSpcDocumentNotify();
  TOLEBOOL        __fastcall ksSaveDocumentEx(BSTR fileName, long SaveMode);
  LPDISPATCH      __fastcall GetStampEx(long SheetNumb);
  TOLEBOOL        __fastcall ksSaveToDXF(BSTR DXFFileName);

  __property   long            reference = {read = get_reference, write = set_reference};
};
typedef ksSpcDocumentDispT<ksSpcDocument> ksSpcDocumentDisp;

// *********************************************************************//
// DispIntf:  ksSpcObjectNotify
// Flags:     (4096) Dispatchable
// GUID:      {AC5004D1-C240-41FC-AB84-7EB5C793AE7F}
// *********************************************************************//
template <class T>
class ksSpcObjectNotifyDispT : public TAutoDriver<ksSpcObjectNotify>
{
public:
  ksSpcObjectNotifyDispT(){}

  void Attach(LPUNKNOWN punk)
  { m_Dispatch = static_cast<T*>(punk); }

  TOLEBOOL        __fastcall BeginDelete(long objRef);
  TOLEBOOL        __fastcall Delete(long objRef);
  TOLEBOOL        __fastcall CellDblClick(long objRef, long number);
  TOLEBOOL        __fastcall CellBeginEdit(long objRef, long number);
  TOLEBOOL        __fastcall ChangeCurrent(long objRef);
  TOLEBOOL        __fastcall DocumentBeginAdd(long objRef);
  TOLEBOOL        __fastcall DocumentAdd(long objRef, BSTR docName);
  TOLEBOOL        __fastcall DocumentRemove(long objRef, BSTR docName);
  TOLEBOOL        __fastcall BeginGeomChange(long objRef);
  TOLEBOOL        __fastcall GeomChange(long objRef);
  TOLEBOOL        __fastcall BeginProcess(long pType, long objRef);
  TOLEBOOL        __fastcall EndProcess(long pType);
  TOLEBOOL        __fastcall CreateObject(long objRef);
  TOLEBOOL        __fastcall UpdateObject(long objRef);
  TOLEBOOL        __fastcall BeginCopy(long objRef);
  TOLEBOOL        __fastcall copy(long objRef);

};
typedef ksSpcObjectNotifyDispT<ksSpcObjectNotify> ksSpcObjectNotifyDisp;

// *********************************************************************//
// DispIntf:  ksSpecificationNotify
// Flags:     (4096) Dispatchable
// GUID:      {0331AB4B-F25B-4EB9-9C8A-BFEA414E3822}
// *********************************************************************//
template <class T>
class ksSpecificationNotifyDispT : public TAutoDriver<ksSpecificationNotify>
{
public:
  ksSpecificationNotifyDispT(){}

  void Attach(LPUNKNOWN punk)
  { m_Dispatch = static_cast<T*>(punk); }

  TOLEBOOL        __fastcall TuningSpcStyleBeginChange(BSTR libName, long numb);
  TOLEBOOL        __fastcall TuningSpcStyleChange(BSTR libName, long numb, TOLEBOOL isOk);
  TOLEBOOL        __fastcall ChangeCurrentSpcDescription(BSTR libName, long numb);
  TOLEBOOL        __fastcall SpcDescriptionAdd(BSTR libName, long numb);
  TOLEBOOL        __fastcall SpcDescriptionRemove(BSTR libName, long numb);
  TOLEBOOL        __fastcall SpcDescriptionBeginEdit(BSTR libName, long numb);
  TOLEBOOL        __fastcall SpcDescriptionEdit(BSTR libName, long numb, TOLEBOOL isOk);
  TOLEBOOL        __fastcall SynchronizationBegin();
  TOLEBOOL        __fastcall Synchronization();
  TOLEBOOL        __fastcall BeginCalcPositions();
  TOLEBOOL        __fastcall CalcPositions();
  TOLEBOOL        __fastcall BeginCreateObject(long typeObj);

};
typedef ksSpecificationNotifyDispT<ksSpecificationNotify> ksSpecificationNotifyDisp;

// *********************************************************************//
// DispIntf:  ksSpecification
// Flags:     (4096) Dispatchable
// GUID:      {51E74524-9A3A-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksSpecificationDispT : public TAutoDriver<ksSpecification>
{
public:
  ksSpecificationDispT(){}

  ksSpecificationDispT(ksSpecification *pintf)
  {
    TAutoDriver<ksSpecification>::Bind(pintf, false);
  }

  ksSpecificationDispT(ksSpecificationPtr pintf)
  {
    TAutoDriver<ksSpecification>::Bind(pintf, true);
  }

  ksSpecificationDispT& operator=(ksSpecification *pintf)
  {
    TAutoDriver<ksSpecification>::Bind(pintf, false);
    return *this;
  }

  ksSpecificationDispT& operator=(ksSpecificationPtr pintf)
  {
    TAutoDriver<ksSpecification>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Specification));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Specification);
  }

  long            __fastcall ksSpcObjectEnd();
  long            __fastcall ksSpcObjectEdit(long spcObj);
  long            __fastcall ksSpcObjectCreate(BSTR nameLib, long styleNumb, long secNumb, 
                                               long subSecNumb, double numb, short typeObj);
  long            __fastcall ksSpcChangeValue(long colNumb, long itemNumb, LPDISPATCH userPars, 
                                              short typeVal);
  long            __fastcall ksSpcVisible(long colNumb, long itemNumb, short flagOn);
  long            __fastcall ksSpcMassa(BSTR sMassa);
  long            __fastcall ksSpcCount(short ispoln, BSTR sCount);
  long            __fastcall ksSpcPosition(long pos);
  long            __fastcall ksSpcIncludeReference(long obj, short Clear);
  long            __fastcall ksGetSpcObjForGeom(BSTR nameLib, long numb, long obj, short equal, 
                                                short First);
  long            __fastcall ksGetSpcObjForGeomWithLimit(BSTR nameLib, long numb, long obj, 
                                                         short equal, short First, long section, 
                                                         double attrTypeNumb);
  BSTR            __fastcall ksGetSpcSectionName(long spcObj);
  long            __fastcall ksEditWindowSpcObject(long obj);
  double          __fastcall ksGetSpcObjectNumber(long spcObj);
  long            __fastcall ksGetSpcObject(double objNumb);
  BSTR            __fastcall ksGetSpcObjectColumnText(long spcObj, long columnType, long ispoln, 
                                                      long block);
  long            __fastcall ksSetSpcObjectColumnText(long columnType, long ispoln, long block, 
                                                      BSTR str);
  long            __fastcall ksGetSpcTableColumn(BSTR nameLib, long numb, short additioanalCol);
  long            __fastcall ksGetSpcColumnType(long spcObj, long colNumb, LPDISPATCH par);
  long            __fastcall ksGetSpcColumnNumb(long spcObj, long columnType, long ispoln, 
                                                long block);
  long            __fastcall ksGetSpcStyleParam(BSTR nameLib, long numb, LPDISPATCH par, long tPar);
  long            __fastcall ksGetSpcDescription(long index, LPDISPATCH param, TOLEBOOL* state);
  long            __fastcall ksSetSpcDescription(long index, LPDISPATCH param, short state);
  long            __fastcall ksAddSpcDescription(LPDISPATCH param);
  long            __fastcall ksDeleteSpcDescription(long index);
  TOLEBOOL        __fastcall D3SpcIncludePart(LPDISPATCH part, TOLEBOOL fillTexts);
  long            __fastcall D3GetSpcObjForGeomWithLimit(BSTR nameLib, long numb, LPDISPATCH part, 
                                                         short First, short section, 
                                                         double attrTypeNumb);
  double          __fastcall ksGetWidthColumnSpc(long numColumn, TOLEBOOL cellOrText);
  long            __fastcall ksGetCurrentSpcObject();
  long            __fastcall ksSetCurrentSpcObject(long spcObj, long index);
  long            __fastcall ksSetTuningSpcStyleParam(long index, LPDISPATCH par);
  long            __fastcall ksGetTuningSpcStyleParam(long index, LPDISPATCH par);
  long            __fastcall ksGetSpcObjGeometry(long spcObj);
  LPDISPATCH      __fastcall D3GetSpcObjGeometry(long spcObj);
  LPDISPATCH      __fastcall ksGetSpcObjectColumnTextEx(long spcObj, long columnType, long ispoln, 
                                                        long block);
  long            __fastcall ksSetSpcObjectColumnTextEx(long columnType, long ispoln, long block, 
                                                        LPDISPATCH arr);
  Kompas6api5_tlb::SpcObjectNotifyPtr __fastcall GetSpcObjectNotify(long objType);
  long            __fastcall ksGetSpcObjGeometryEx(long spcObj, long geomMode);
  TOLEBOOL        __fastcall ksSetSpcObjectColumnTextAlign(long spcObj, long columnNumber, 
                                                           long lineIndex, long align);
  long            __fastcall ksGetSpcObjectColumnTextAlign(long spcObj, long columnNumber, 
                                                           long lineIndex);
  double          __fastcall ksGetSpcObjectAttributeNumber(long spcObj);
  TOLEBOOL        __fastcall ksSetSpcObjectAttributeNumber(long spcObj, double attrNumber);
  double          __fastcall ksGetSpcObjectSummaryCount(long spcObj, long ispoln, long blockNumber);
  TOLEBOOL        __fastcall ksSetSpcObjectMaterial(long spcObj, BSTR material, double density);
  BSTR            __fastcall ksGetSpcPerformanceName(long index, long ispoln, long block);
  TOLEBOOL        __fastcall ksSetSpcPerformanceName(long index, long ispoln, long block, BSTR name);
  TOLEBOOL        __fastcall ksSpcDocLinksClear(long doc);

};
typedef ksSpecificationDispT<ksSpecification> ksSpecificationDisp;

// *********************************************************************//
// DispIntf:  ksDocumentTxt
// Flags:     (4096) Dispatchable
// GUID:      {74D745F1-9A3A-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksDocumentTxtDispT : public TAutoDriver<ksDocumentTxt>
{
public:
  ksDocumentTxtDispT(){}

  ksDocumentTxtDispT(ksDocumentTxt *pintf)
  {
    TAutoDriver<ksDocumentTxt>::Bind(pintf, false);
  }

  ksDocumentTxtDispT(ksDocumentTxtPtr pintf)
  {
    TAutoDriver<ksDocumentTxt>::Bind(pintf, true);
  }

  ksDocumentTxtDispT& operator=(ksDocumentTxt *pintf)
  {
    TAutoDriver<ksDocumentTxt>::Bind(pintf, false);
    return *this;
  }

  ksDocumentTxtDispT& operator=(ksDocumentTxtPtr pintf)
  {
    TAutoDriver<ksDocumentTxt>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_DocumentTxt));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_DocumentTxt);
  }

  void            __fastcall set_reference(long Value);
  long            __fastcall get_reference();
  LPDISPATCH      __fastcall GetStamp();
  TOLEBOOL        __fastcall ksCloseDocument();
  long            __fastcall ksGetTxtDocumentPagesCount();
  TOLEBOOL        __fastcall ksSaveDocument(BSTR fileName);
  TOLEBOOL        __fastcall ksCreateDocument(LPDISPATCH par);
  TOLEBOOL        __fastcall ksOpenDocument(BSTR nameDoc, short regim);
  TOLEBOOL        __fastcall SaveAsToRasterFormat(BSTR fileName, LPDISPATCH par);
  LPDISPATCH      __fastcall RasterFormatParam();
  TOLEBOOL        __fastcall SaveAsToUncompressedRasterFormat(BSTR fileName, LPDISPATCH rasterPar);
  long            __fastcall ksGetObjParam(long ref, LPDISPATCH param, long parType/*[def,opt]*/);
  long            __fastcall ksSetObjParam(long ref, LPDISPATCH param, long parType/*[def,opt]*/);
  TOLEBOOL        __fastcall ksSaveDocumentEx(BSTR fileName, long SaveMode);
  LPDISPATCH      __fastcall GetStampEx(long SheetNumb);
  long            __fastcall ksGetDocumentPagesCount();

  __property   long            reference = {read = get_reference, write = set_reference};
};
typedef ksDocumentTxtDispT<ksDocumentTxt> ksDocumentTxtDisp;

// *********************************************************************//
// DispIntf:  ksAttributeTypeParam
// Flags:     (4096) Dispatchable
// GUID:      {CC26DA61-9B22-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksAttributeTypeParamDispT : public TAutoDriver<ksAttributeTypeParam>
{
public:
  ksAttributeTypeParamDispT(){}

  ksAttributeTypeParamDispT(ksAttributeTypeParam *pintf)
  {
    TAutoDriver<ksAttributeTypeParam>::Bind(pintf, false);
  }

  ksAttributeTypeParamDispT(ksAttributeTypeParamPtr pintf)
  {
    TAutoDriver<ksAttributeTypeParam>::Bind(pintf, true);
  }

  ksAttributeTypeParamDispT& operator=(ksAttributeTypeParam *pintf)
  {
    TAutoDriver<ksAttributeTypeParam>::Bind(pintf, false);
    return *this;
  }

  ksAttributeTypeParamDispT& operator=(ksAttributeTypeParamPtr pintf)
  {
    TAutoDriver<ksAttributeTypeParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_AttributeTypeParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_AttributeTypeParam);
  }

  void            __fastcall set_key1(long Value);
  long            __fastcall get_key1();
  void            __fastcall set_key2(long Value);
  long            __fastcall get_key2();
  void            __fastcall set_key3(long Value);
  long            __fastcall get_key3();
  void            __fastcall set_key4(long Value);
  long            __fastcall get_key4();
  void            __fastcall set_rowsCount(long Value);
  long            __fastcall get_rowsCount();
  void            __fastcall set_header(BSTR Value);
  BSTR            __fastcall get_header();
  void            __fastcall set_flagVisible(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_flagVisible();
  void            __fastcall set_password(BSTR Value);
  BSTR            __fastcall get_password();
  LPDISPATCH      __fastcall GetColumns();
  TOLEBOOL        __fastcall SetColumns(LPDISPATCH val);
  TOLEBOOL        __fastcall Init();

  __property   long            key1 = {read = get_key1, write = set_key1};
  __property   long            key2 = {read = get_key2, write = set_key2};
  __property   long            key3 = {read = get_key3, write = set_key3};
  __property   long            key4 = {read = get_key4, write = set_key4};
  __property   long            rowsCount = {read = get_rowsCount, write = set_rowsCount};
  __property   BSTR            header = {read = get_header, write = set_header};
  __property   TOLEBOOL        flagVisible = {read = get_flagVisible, write = set_flagVisible};
  __property   BSTR            password = {read = get_password, write = set_password};
};
typedef ksAttributeTypeParamDispT<ksAttributeTypeParam> ksAttributeTypeParamDisp;

// *********************************************************************//
// DispIntf:  ksColumnInfoParam
// Flags:     (4096) Dispatchable
// GUID:      {CE0D05E1-9B2A-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksColumnInfoParamDispT : public TAutoDriver<ksColumnInfoParam>
{
public:
  ksColumnInfoParamDispT(){}

  ksColumnInfoParamDispT(ksColumnInfoParam *pintf)
  {
    TAutoDriver<ksColumnInfoParam>::Bind(pintf, false);
  }

  ksColumnInfoParamDispT(ksColumnInfoParamPtr pintf)
  {
    TAutoDriver<ksColumnInfoParam>::Bind(pintf, true);
  }

  ksColumnInfoParamDispT& operator=(ksColumnInfoParam *pintf)
  {
    TAutoDriver<ksColumnInfoParam>::Bind(pintf, false);
    return *this;
  }

  ksColumnInfoParamDispT& operator=(ksColumnInfoParamPtr pintf)
  {
    TAutoDriver<ksColumnInfoParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ColumnInfoParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ColumnInfoParam);
  }

  void            __fastcall set_type(short Value);
  short           __fastcall get_type();
  void            __fastcall set_header(BSTR Value);
  BSTR            __fastcall get_header();
  void            __fastcall set_key(short Value);
  short           __fastcall get_key();
  void            __fastcall set_def(BSTR Value);
  BSTR            __fastcall get_def();
  void            __fastcall set_flagEnum(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_flagEnum();
  LPDISPATCH      __fastcall GetFieldEnum();
  TOLEBOOL        __fastcall SetFieldEnum(LPDISPATCH fieldEnum);
  LPDISPATCH      __fastcall GetColumns();
  TOLEBOOL        __fastcall SetColumns(LPDISPATCH fieldEnum);
  TOLEBOOL        __fastcall Init();

  __property   short           type = {read = get_type, write = set_type};
  __property   BSTR            header = {read = get_header, write = set_header};
  __property   short           key = {read = get_key, write = set_key};
  __property   BSTR            def = {read = get_def, write = set_def};
  __property   TOLEBOOL        flagEnum = {read = get_flagEnum, write = set_flagEnum};
};
typedef ksColumnInfoParamDispT<ksColumnInfoParam> ksColumnInfoParamDisp;

// *********************************************************************//
// DispIntf:  ksAttributeParam
// Flags:     (4096) Dispatchable
// GUID:      {CE0D05E4-9B2A-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksAttributeParamDispT : public TAutoDriver<ksAttributeParam>
{
public:
  ksAttributeParamDispT(){}

  ksAttributeParamDispT(ksAttributeParam *pintf)
  {
    TAutoDriver<ksAttributeParam>::Bind(pintf, false);
  }

  ksAttributeParamDispT(ksAttributeParamPtr pintf)
  {
    TAutoDriver<ksAttributeParam>::Bind(pintf, true);
  }

  ksAttributeParamDispT& operator=(ksAttributeParam *pintf)
  {
    TAutoDriver<ksAttributeParam>::Bind(pintf, false);
    return *this;
  }

  ksAttributeParamDispT& operator=(ksAttributeParamPtr pintf)
  {
    TAutoDriver<ksAttributeParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_AttributeParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_AttributeParam);
  }

  void            __fastcall set_key1(long Value);
  long            __fastcall get_key1();
  void            __fastcall set_key2(long Value);
  long            __fastcall get_key2();
  void            __fastcall set_key3(long Value);
  long            __fastcall get_key3();
  void            __fastcall set_key4(long Value);
  long            __fastcall get_key4();
  void            __fastcall set_password(BSTR Value);
  BSTR            __fastcall get_password();
  LPDISPATCH      __fastcall GetValues();
  TOLEBOOL        __fastcall SetValues(LPDISPATCH values);
  LPDISPATCH      __fastcall GetFlagVisible();
  TOLEBOOL        __fastcall SetFlagVisible(LPDISPATCH flagVisible);
  LPDISPATCH      __fastcall GetColumnKeys();
  TOLEBOOL        __fastcall SetColumnKeys(LPDISPATCH columnKeys);
  TOLEBOOL        __fastcall Init();

  __property   long            key1 = {read = get_key1, write = set_key1};
  __property   long            key2 = {read = get_key2, write = set_key2};
  __property   long            key3 = {read = get_key3, write = set_key3};
  __property   long            key4 = {read = get_key4, write = set_key4};
  __property   BSTR            password = {read = get_password, write = set_password};
};
typedef ksAttributeParamDispT<ksAttributeParam> ksAttributeParamDisp;

// *********************************************************************//
// DispIntf:  ksVariable
// Flags:     (4096) Dispatchable
// GUID:      {508A0CC1-9D74-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksVariableDispT : public TAutoDriver<ksVariable>
{
public:
  ksVariableDispT(){}

  ksVariableDispT(ksVariable *pintf)
  {
    TAutoDriver<ksVariable>::Bind(pintf, false);
  }

  ksVariableDispT(ksVariablePtr pintf)
  {
    TAutoDriver<ksVariable>::Bind(pintf, true);
  }

  ksVariableDispT& operator=(ksVariable *pintf)
  {
    TAutoDriver<ksVariable>::Bind(pintf, false);
    return *this;
  }

  ksVariableDispT& operator=(ksVariablePtr pintf)
  {
    TAutoDriver<ksVariable>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Variable));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Variable);
  }

  void            __fastcall set_value(double Value);
  double          __fastcall get_value();
  void            __fastcall set_note(BSTR Value);
  BSTR            __fastcall get_note();
  void            __fastcall set_Pseudonym(BSTR Value);
  BSTR            __fastcall get_Pseudonym();
  void            __fastcall set_Expression(BSTR Value);
  BSTR            __fastcall get_Expression();
  void            __fastcall set_external(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_external();
  void            __fastcall set_Information(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_Information();
  BSTR            __fastcall get_name();
  BSTR            __fastcall get_parameterNote();
  BSTR            __fastcall get_linkVarName();
  BSTR            __fastcall get_linkDocName();
  TOLEBOOL        __fastcall SetLink(BSTR doc, BSTR name);
  BSTR            __fastcall get_displayName();

  __property   double          value = {read = get_value, write = set_value};
  __property   BSTR            note = {read = get_note, write = set_note};
  __property   BSTR            Pseudonym = {read = get_Pseudonym, write = set_Pseudonym};
  __property   BSTR            Expression = {read = get_Expression, write = set_Expression};
  __property   TOLEBOOL        external = {read = get_external, write = set_external};
  __property   TOLEBOOL        Information = {read = get_Information, write = set_Information};
  __property   BSTR            name = {read = get_name};
  __property   BSTR            parameterNote = {read = get_parameterNote};
  __property   BSTR            linkVarName = {read = get_linkVarName};
  __property   BSTR            linkDocName = {read = get_linkDocName};
  __property   BSTR            displayName = {read = get_displayName};
};
typedef ksVariableDispT<ksVariable> ksVariableDisp;

// *********************************************************************//
// DispIntf:  ksLibraryAttrTypeParam
// Flags:     (4096) Dispatchable
// GUID:      {FA93AA21-9B3D-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksLibraryAttrTypeParamDispT : public TAutoDriver<ksLibraryAttrTypeParam>
{
public:
  ksLibraryAttrTypeParamDispT(){}

  ksLibraryAttrTypeParamDispT(ksLibraryAttrTypeParam *pintf)
  {
    TAutoDriver<ksLibraryAttrTypeParam>::Bind(pintf, false);
  }

  ksLibraryAttrTypeParamDispT(ksLibraryAttrTypeParamPtr pintf)
  {
    TAutoDriver<ksLibraryAttrTypeParam>::Bind(pintf, true);
  }

  ksLibraryAttrTypeParamDispT& operator=(ksLibraryAttrTypeParam *pintf)
  {
    TAutoDriver<ksLibraryAttrTypeParam>::Bind(pintf, false);
    return *this;
  }

  ksLibraryAttrTypeParamDispT& operator=(ksLibraryAttrTypeParamPtr pintf)
  {
    TAutoDriver<ksLibraryAttrTypeParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_LibraryAttrTypeParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_LibraryAttrTypeParam);
  }

  void            __fastcall set_name(BSTR Value);
  BSTR            __fastcall get_name();
  void            __fastcall set_typeId(double Value);
  double          __fastcall get_typeId();
  TOLEBOOL        __fastcall Init();

  __property   BSTR            name = {read = get_name, write = set_name};
  __property   double          typeId = {read = get_typeId, write = set_typeId};
};
typedef ksLibraryAttrTypeParamDispT<ksLibraryAttrTypeParam> ksLibraryAttrTypeParamDisp;

// *********************************************************************//
// DispIntf:  ksAttributeObject
// Flags:     (4096) Dispatchable
// GUID:      {FA93AA24-9B3D-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksAttributeObjectDispT : public TAutoDriver<ksAttributeObject>
{
public:
  ksAttributeObjectDispT(){}

  ksAttributeObjectDispT(ksAttributeObject *pintf)
  {
    TAutoDriver<ksAttributeObject>::Bind(pintf, false);
  }

  ksAttributeObjectDispT(ksAttributeObjectPtr pintf)
  {
    TAutoDriver<ksAttributeObject>::Bind(pintf, true);
  }

  ksAttributeObjectDispT& operator=(ksAttributeObject *pintf)
  {
    TAutoDriver<ksAttributeObject>::Bind(pintf, false);
    return *this;
  }

  ksAttributeObjectDispT& operator=(ksAttributeObjectPtr pintf)
  {
    TAutoDriver<ksAttributeObject>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_AttributeObject));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_AttributeObject);
  }

  double          __fastcall ksCreateAttrType(LPDISPATCH attrType, BSTR libName);
  long            __fastcall ksDeleteAttrType(double attrID, BSTR libName, BSTR password);
  long            __fastcall ksGetAttrType(double attrID, BSTR libName, LPDISPATCH attrType);
  double          __fastcall ksSetAttrType(double attrID, BSTR libName, LPDISPATCH attrType, 
                                           BSTR password);
  double          __fastcall ksChoiceAttrTypes(BSTR libName);
  long            __fastcall ksCreateAttr(long pObj, LPDISPATCH attr, double attrID, BSTR libName);
  long            __fastcall ksDeleteAttr(long pObj, long pAttr, BSTR password);
  long            __fastcall ksGetAttrValue(long pAttr, long rowNumb, long columnNumb, 
                                            LPDISPATCH flagVisible, LPDISPATCH columnKeys, 
                                            LPDISPATCH value);
  long            __fastcall ksSetAttrValue(long pAttr, long rowNumb, long columnNumb, 
                                            LPDISPATCH flagVisible, LPDISPATCH columnKeys, 
                                            LPDISPATCH value, BSTR password);
  long            __fastcall ksGetAttrRow(long pAttr, long rowNumb, LPDISPATCH flagVisible, 
                                          LPDISPATCH columnKeys, LPDISPATCH value);
  long            __fastcall ksSetAttrRow(long pAttr, long rowNumb, LPDISPATCH flagVisible, 
                                          LPDISPATCH columnKeys, LPDISPATCH value, BSTR password);
  long            __fastcall ksAddAttrRow(long pAttr, long rowNumb, LPDISPATCH flagVisible, 
                                          LPDISPATCH value, BSTR password);
  long            __fastcall ksDeleteAttrRow(long pAttr, long rowNumb, BSTR password);
  long            __fastcall ksGetSizeAttrValue(long pAttr, long columnNumb, long* count);
  long            __fastcall ksGetSizeAttrRow(long pAttr, long* count);
  long            __fastcall ksGetAttrKeysInfo(long pAttr, long* key1, long* key2, long* key3, 
                                               long* key4, double* numb);
  long            __fastcall ksGetAttrColumnInfo(long pAttr, long columnNumb, LPDISPATCH columnInfo);
  long            __fastcall ksGetAttrTabInfo(long pAttr, long* rowsCount, long* columnsCount);
  long            __fastcall ksViewEditAttr(long pAttr, long type, BSTR password);
  long            __fastcall ksViewEditAttrType(BSTR libName, long type, double attrID, 
                                                BSTR password);
  long            __fastcall ksChoiceAttr(long pObj);
  LPDISPATCH      __fastcall ksGetLibraryAttrTypesArray(BSTR libName);
  Kompas6api5_tlb::ksAttribute3DPtr __fastcall ksCreateAttr3D(LPDISPATCH pObj, LPDISPATCH attr, 
                                                              double attrID, BSTR libName);
  long            __fastcall ksDeleteAttr3D(LPDISPATCH pObj, Kompas6api5_tlb::ksAttribute3DPtr pAttr
                                            , BSTR password);
  Kompas6api5_tlb::ksAttribute3DPtr __fastcall ksChoiceAttr3D(LPDISPATCH pObj);
  Kompas6api5_tlb::ksAttribute3DPtr __fastcall ksCreateAttr3DEx(LPDISPATCH pObj, 
                                                                LPDISPATCH pSourcePart, 
                                                                LPDISPATCH attr, double attrID, 
                                                                BSTR libName);
  long            __fastcall ksGetSizeAttrValueW(long pAttr, long columnNumb, long* count);
  long            __fastcall ksGetSizeAttrRowW(long pAttr, long* count);

};
typedef ksAttributeObjectDispT<ksAttributeObject> ksAttributeObjectDisp;

// *********************************************************************//
// DispIntf:  ksRequestInfo3D
// Flags:     (4096) Dispatchable
// GUID:      {E9807824-9D55-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksRequestInfo3DDispT : public TAutoDriver<ksRequestInfo3D>
{
public:
  ksRequestInfo3DDispT(){}

  ksRequestInfo3DDispT(ksRequestInfo3D *pintf)
  {
    TAutoDriver<ksRequestInfo3D>::Bind(pintf, false);
  }

  ksRequestInfo3DDispT(ksRequestInfo3DPtr pintf)
  {
    TAutoDriver<ksRequestInfo3D>::Bind(pintf, true);
  }

  ksRequestInfo3DDispT& operator=(ksRequestInfo3D *pintf)
  {
    TAutoDriver<ksRequestInfo3D>::Bind(pintf, false);
    return *this;
  }

  ksRequestInfo3DDispT& operator=(ksRequestInfo3DPtr pintf)
  {
    TAutoDriver<ksRequestInfo3D>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_RequestInfo3D));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_RequestInfo3D);
  }

  void            __fastcall set_prompt(BSTR Value);
  BSTR            __fastcall get_prompt();
  void            __fastcall set_title(BSTR Value);
  BSTR            __fastcall get_title();
  void            __fastcall set_cursorName(BSTR Value);
  BSTR            __fastcall get_cursorName();
  void            __fastcall set_commandsString(BSTR Value);
  BSTR            __fastcall get_commandsString();
  void            __fastcall set_cursorId(long Value);
  long            __fastcall get_cursorId();
  void            __fastcall set_menuId(long Value);
  long            __fastcall get_menuId();
  void            __fastcall set_DynamicFiltering(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_DynamicFiltering();
  BSTR            __fastcall GetFilterCallBack();
  BSTR            __fastcall GetCallBack();
  TOLEBOOL        __fastcall SetFilterCallBack(BSTR methodName, long hInst, LPDISPATCH dispatchOCX);
  TOLEBOOL        __fastcall SetCallBack(BSTR methodName, long hInst, LPDISPATCH dispatchOCX);
  LPDISPATCH      __fastcall GetPlacement();
  LPDISPATCH      __fastcall GetEntityCollection();
  long            __fastcall GetCurrentCommand();
  LPDISPATCH      __fastcall GetMateConstraintCollection();
  LPDISPATCH      __fastcall GetIPhantom();
  TOLEBOOL        __fastcall CreatePhantom();
  LPUNKNOWN       __fastcall GetProcessParam();
  TOLEBOOL        __fastcall SetProcessParam(LPUNKNOWN param);
  LPDISPATCH      __fastcall GetCallBackFeature();

  __property   BSTR            prompt = {read = get_prompt, write = set_prompt};
  __property   BSTR            title = {read = get_title, write = set_title};
  __property   BSTR            cursorName = {read = get_cursorName, write = set_cursorName};
  __property   BSTR            commandsString = {read = get_commandsString, write = set_commandsString};
  __property   long            cursorId = {read = get_cursorId, write = set_cursorId};
  __property   long            menuId = {read = get_menuId, write = set_menuId};
  __property   TOLEBOOL        DynamicFiltering = {read = get_DynamicFiltering, write = set_DynamicFiltering};
};
typedef ksRequestInfo3DDispT<ksRequestInfo3D> ksRequestInfo3DDisp;

// *********************************************************************//
// DispIntf:  ksMateConstraint
// Flags:     (4096) Dispatchable
// GUID:      {508A0CC4-9D74-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksMateConstraintDispT : public TAutoDriver<ksMateConstraint>
{
public:
  ksMateConstraintDispT(){}

  ksMateConstraintDispT(ksMateConstraint *pintf)
  {
    TAutoDriver<ksMateConstraint>::Bind(pintf, false);
  }

  ksMateConstraintDispT(ksMateConstraintPtr pintf)
  {
    TAutoDriver<ksMateConstraint>::Bind(pintf, true);
  }

  ksMateConstraintDispT& operator=(ksMateConstraint *pintf)
  {
    TAutoDriver<ksMateConstraint>::Bind(pintf, false);
    return *this;
  }

  ksMateConstraintDispT& operator=(ksMateConstraintPtr pintf)
  {
    TAutoDriver<ksMateConstraint>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_MateConstraint));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_MateConstraint);
  }

  void            __fastcall set_constraintType(short Value);
  short           __fastcall get_constraintType();
  void            __fastcall set_direction(short Value);
  short           __fastcall get_direction();
  void            __fastcall set_fixed(short Value);
  short           __fastcall get_fixed();
  void            __fastcall set_distance(double Value);
  double          __fastcall get_distance();
  TOLEBOOL        __fastcall Create();
  LPDISPATCH      __fastcall GetBaseObj(short number);
  TOLEBOOL        __fastcall SetBaseObj(short number, LPDISPATCH obj);
  LPDISPATCH      __fastcall GetFeature();
  long            __fastcall GetEntityParams(short number, TVariant* params);

  __property   short           constraintType = {read = get_constraintType, write = set_constraintType};
  __property   short           direction = {read = get_direction, write = set_direction};
  __property   short           fixed = {read = get_fixed, write = set_fixed};
  __property   double          distance = {read = get_distance, write = set_distance};
};
typedef ksMateConstraintDispT<ksMateConstraint> ksMateConstraintDisp;

// *********************************************************************//
// DispIntf:  ksDefaultObject
// Flags:     (4096) Dispatchable
// GUID:      {508A0CC7-9D74-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksDefaultObjectDispT : public TAutoDriver<ksDefaultObject>
{
public:
  ksDefaultObjectDispT(){}

  ksDefaultObjectDispT(ksDefaultObject *pintf)
  {
    TAutoDriver<ksDefaultObject>::Bind(pintf, false);
  }

  ksDefaultObjectDispT(ksDefaultObjectPtr pintf)
  {
    TAutoDriver<ksDefaultObject>::Bind(pintf, true);
  }

  ksDefaultObjectDispT& operator=(ksDefaultObject *pintf)
  {
    TAutoDriver<ksDefaultObject>::Bind(pintf, false);
    return *this;
  }

  ksDefaultObjectDispT& operator=(ksDefaultObjectPtr pintf)
  {
    TAutoDriver<ksDefaultObject>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_DefaultObject));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_DefaultObject);
  }

  LPDISPATCH      __fastcall GetSurface();
  LPDISPATCH      __fastcall GetCurve3D();

};
typedef ksDefaultObjectDispT<ksDefaultObject> ksDefaultObjectDisp;

// *********************************************************************//
// DispIntf:  ksModelLibrary
// Flags:     (4096) Dispatchable
// GUID:      {111CEFE4-A0A7-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template<class T>
class ksModelLibraryDispT : public TAutoDriver<ksModelLibrary>
{
public:
  ksModelLibraryDispT(){}

  ksModelLibraryDispT(ksModelLibrary *pintf)
  {
    TAutoDriver<ksModelLibrary>::Bind(pintf, false);
  }

  ksModelLibraryDispT(ksModelLibraryPtr pintf)
  {
    TAutoDriver<ksModelLibrary>::Bind(pintf, true);
  }

  ksModelLibraryDispT& operator=(ksModelLibrary *pintf)
  {
    TAutoDriver<ksModelLibrary>::Bind(pintf, false);
    return *this;
  }

  ksModelLibraryDispT& operator=(ksModelLibraryPtr pintf)
  {
    TAutoDriver<ksModelLibrary>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ModelLibrary));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ModelLibrary);
  }

  long            __fastcall ModelLibraryOperation(BSTR libName, long type);
  BSTR            __fastcall ChoiceModelFromLib(BSTR libFile, long* type);
  long            __fastcall ExistModelInLibrary(BSTR name);
  long            __fastcall AddD3DocumentToLibrary(BSTR libName, BSTR fileName);
  long            __fastcall CheckModelLibrary(BSTR libName, TOLEBOOL possibleMessage);

};
typedef ksModelLibraryDispT<ksModelLibrary> ksModelLibraryDisp;

// *********************************************************************//
// DispIntf:  ksVariableCollection
// Flags:     (4096) Dispatchable
// GUID:      {03CEAC81-C0B8-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksVariableCollectionDispT : public TAutoDriver<ksVariableCollection>
{
public:
  ksVariableCollectionDispT(){}

  ksVariableCollectionDispT(ksVariableCollection *pintf)
  {
    TAutoDriver<ksVariableCollection>::Bind(pintf, false);
  }

  ksVariableCollectionDispT(ksVariableCollectionPtr pintf)
  {
    TAutoDriver<ksVariableCollection>::Bind(pintf, true);
  }

  ksVariableCollectionDispT& operator=(ksVariableCollection *pintf)
  {
    TAutoDriver<ksVariableCollection>::Bind(pintf, false);
    return *this;
  }

  ksVariableCollectionDispT& operator=(ksVariableCollectionPtr pintf)
  {
    TAutoDriver<ksVariableCollection>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_VariableCollection));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_VariableCollection);
  }

  TOLEBOOL        __fastcall refresh();
  long            __fastcall GetCount();
  LPDISPATCH      __fastcall First();
  LPDISPATCH      __fastcall Last();
  LPDISPATCH      __fastcall Next();
  LPDISPATCH      __fastcall Prev();
  LPDISPATCH      __fastcall GetByIndex(long index);
  LPDISPATCH      __fastcall GetByName(BSTR name, TOLEBOOL testFullName/*[def,opt]*/, 
                                       TOLEBOOL testIgnoreCase/*[def,opt]*/);
  LPDISPATCH      __fastcall AddNewVariable(BSTR name, double value, BSTR note);
  TOLEBOOL        __fastcall RemoveVariable(BSTR name);

};
typedef ksVariableCollectionDispT<ksVariableCollection> ksVariableCollectionDisp;

// *********************************************************************//
// DispIntf:  ksMateConstraintCollection
// Flags:     (4096) Dispatchable
// GUID:      {03CEAC84-C0B8-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksMateConstraintCollectionDispT : public TAutoDriver<ksMateConstraintCollection>
{
public:
  ksMateConstraintCollectionDispT(){}

  ksMateConstraintCollectionDispT(ksMateConstraintCollection *pintf)
  {
    TAutoDriver<ksMateConstraintCollection>::Bind(pintf, false);
  }

  ksMateConstraintCollectionDispT(ksMateConstraintCollectionPtr pintf)
  {
    TAutoDriver<ksMateConstraintCollection>::Bind(pintf, true);
  }

  ksMateConstraintCollectionDispT& operator=(ksMateConstraintCollection *pintf)
  {
    TAutoDriver<ksMateConstraintCollection>::Bind(pintf, false);
    return *this;
  }

  ksMateConstraintCollectionDispT& operator=(ksMateConstraintCollectionPtr pintf)
  {
    TAutoDriver<ksMateConstraintCollection>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_MateConstraintCollection));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_MateConstraintCollection);
  }

  long            __fastcall GetCount();
  LPDISPATCH      __fastcall First();
  LPDISPATCH      __fastcall Last();
  LPDISPATCH      __fastcall Next();
  LPDISPATCH      __fastcall Prev();
  LPDISPATCH      __fastcall GetByIndex(long index);
  TOLEBOOL        __fastcall AddMateConstraint(LPDISPATCH mate);
  TOLEBOOL        __fastcall RemoveMateConstraint(LPDISPATCH mate);
  TOLEBOOL        __fastcall Clear();
  TOLEBOOL        __fastcall refresh();
  long            __fastcall FindIt(LPDISPATCH entity);
  TOLEBOOL        __fastcall GetSafeArrayByObj(LPDISPATCH obj, TVariant* pArray);

};
typedef ksMateConstraintCollectionDispT<ksMateConstraintCollection> ksMateConstraintCollectionDisp;

// *********************************************************************//
// DispIntf:  ksPartCollection
// Flags:     (4096) Dispatchable
// GUID:      {03CEAC87-C0B8-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksPartCollectionDispT : public TAutoDriver<ksPartCollection>
{
public:
  ksPartCollectionDispT(){}

  ksPartCollectionDispT(ksPartCollection *pintf)
  {
    TAutoDriver<ksPartCollection>::Bind(pintf, false);
  }

  ksPartCollectionDispT(ksPartCollectionPtr pintf)
  {
    TAutoDriver<ksPartCollection>::Bind(pintf, true);
  }

  ksPartCollectionDispT& operator=(ksPartCollection *pintf)
  {
    TAutoDriver<ksPartCollection>::Bind(pintf, false);
    return *this;
  }

  ksPartCollectionDispT& operator=(ksPartCollectionPtr pintf)
  {
    TAutoDriver<ksPartCollection>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_PartCollection));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_PartCollection);
  }

  TOLEBOOL        __fastcall refresh();
  long            __fastcall GetCount();
  LPDISPATCH      __fastcall First();
  LPDISPATCH      __fastcall Last();
  LPDISPATCH      __fastcall Next();
  LPDISPATCH      __fastcall Prev();
  LPDISPATCH      __fastcall GetByName(BSTR name, TOLEBOOL testFullName/*[def,opt]*/, 
                                       TOLEBOOL testIgnoreCase/*[def,opt]*/);
  LPDISPATCH      __fastcall GetByIndex(long index);
  TOLEBOOL        __fastcall Add(LPDISPATCH part);
  TOLEBOOL        __fastcall AddAt(LPDISPATCH part, long index);
  TOLEBOOL        __fastcall AddBefore(LPDISPATCH part, LPDISPATCH base);
  TOLEBOOL        __fastcall DetachByIndex(long index);
  TOLEBOOL        __fastcall DetachByBody(LPDISPATCH part);
  TOLEBOOL        __fastcall Clear();
  TOLEBOOL        __fastcall SetByIndex(LPDISPATCH part, long index);
  long            __fastcall FindIt(LPDISPATCH entity);

};
typedef ksPartCollectionDispT<ksPartCollection> ksPartCollectionDisp;

// *********************************************************************//
// DispIntf:  ksMeshPartArrayDefinition
// Flags:     (4096) Dispatchable
// GUID:      {E6E78D61-C0FA-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksMeshPartArrayDefinitionDispT : public TAutoDriver<ksMeshPartArrayDefinition>
{
public:
  ksMeshPartArrayDefinitionDispT(){}

  ksMeshPartArrayDefinitionDispT(ksMeshPartArrayDefinition *pintf)
  {
    TAutoDriver<ksMeshPartArrayDefinition>::Bind(pintf, false);
  }

  ksMeshPartArrayDefinitionDispT(ksMeshPartArrayDefinitionPtr pintf)
  {
    TAutoDriver<ksMeshPartArrayDefinition>::Bind(pintf, true);
  }

  ksMeshPartArrayDefinitionDispT& operator=(ksMeshPartArrayDefinition *pintf)
  {
    TAutoDriver<ksMeshPartArrayDefinition>::Bind(pintf, false);
    return *this;
  }

  ksMeshPartArrayDefinitionDispT& operator=(ksMeshPartArrayDefinitionPtr pintf)
  {
    TAutoDriver<ksMeshPartArrayDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_MeshPartArrayDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_MeshPartArrayDefinition);
  }

  void            __fastcall set_angle1(double Value);
  double          __fastcall get_angle1();
  void            __fastcall set_count1(long Value);
  long            __fastcall get_count1();
  void            __fastcall set_step1(double Value);
  double          __fastcall get_step1();
  void            __fastcall set_factor1(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_factor1();
  void            __fastcall set_angle2(double Value);
  double          __fastcall get_angle2();
  void            __fastcall set_count2(long Value);
  long            __fastcall get_count2();
  void            __fastcall set_step2(double Value);
  double          __fastcall get_step2();
  void            __fastcall set_factor2(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_factor2();
  void            __fastcall set_insideFlag(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_insideFlag();
  LPDISPATCH      __fastcall GetAxis1();
  TOLEBOOL        __fastcall SetAxis1(LPDISPATCH axis);
  LPDISPATCH      __fastcall GetAxis2();
  TOLEBOOL        __fastcall SetAxis2(LPDISPATCH axis);
  LPDISPATCH      __fastcall PartArray();
  TOLEBOOL        __fastcall GetCopyParamAlongAxis(TOLEBOOL firstAxis, double* angle, long* count, 
                                                   double* step, TOLEBOOL* factor);
  TOLEBOOL        __fastcall SetCopyParamAlongAxis(TOLEBOOL firstAxis, double angle, long count, 
                                                   double step, TOLEBOOL factor);
  LPDISPATCH      __fastcall DeletedCollection();

  __property   double          angle1 = {read = get_angle1, write = set_angle1};
  __property   long            count1 = {read = get_count1, write = set_count1};
  __property   double          step1 = {read = get_step1, write = set_step1};
  __property   TOLEBOOL        factor1 = {read = get_factor1, write = set_factor1};
  __property   double          angle2 = {read = get_angle2, write = set_angle2};
  __property   long            count2 = {read = get_count2, write = set_count2};
  __property   double          step2 = {read = get_step2, write = set_step2};
  __property   TOLEBOOL        factor2 = {read = get_factor2, write = set_factor2};
  __property   TOLEBOOL        insideFlag = {read = get_insideFlag, write = set_insideFlag};
};
typedef ksMeshPartArrayDefinitionDispT<ksMeshPartArrayDefinition> ksMeshPartArrayDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksCircularPartArrayDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DDD05143-C180-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksCircularPartArrayDefinitionDispT : public TAutoDriver<ksCircularPartArrayDefinition>
{
public:
  ksCircularPartArrayDefinitionDispT(){}

  ksCircularPartArrayDefinitionDispT(ksCircularPartArrayDefinition *pintf)
  {
    TAutoDriver<ksCircularPartArrayDefinition>::Bind(pintf, false);
  }

  ksCircularPartArrayDefinitionDispT(ksCircularPartArrayDefinitionPtr pintf)
  {
    TAutoDriver<ksCircularPartArrayDefinition>::Bind(pintf, true);
  }

  ksCircularPartArrayDefinitionDispT& operator=(ksCircularPartArrayDefinition *pintf)
  {
    TAutoDriver<ksCircularPartArrayDefinition>::Bind(pintf, false);
    return *this;
  }

  ksCircularPartArrayDefinitionDispT& operator=(ksCircularPartArrayDefinitionPtr pintf)
  {
    TAutoDriver<ksCircularPartArrayDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_CircularPartArrayDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_CircularPartArrayDefinition);
  }

  void            __fastcall set_count1(long Value);
  long            __fastcall get_count1();
  void            __fastcall set_step1(double Value);
  double          __fastcall get_step1();
  void            __fastcall set_factor1(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_factor1();
  void            __fastcall set_count2(long Value);
  long            __fastcall get_count2();
  void            __fastcall set_step2(double Value);
  double          __fastcall get_step2();
  void            __fastcall set_factor2(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_factor2();
  void            __fastcall set_inverce(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_inverce();
  void            __fastcall set_keepAngle(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_keepAngle();
  LPDISPATCH      __fastcall PartArray();
  LPDISPATCH      __fastcall GetAxis();
  TOLEBOOL        __fastcall SetAxis(LPDISPATCH axis);
  TOLEBOOL        __fastcall GetCopyParamAlongDir(long* count, double* step, TOLEBOOL* factor, 
                                                  TOLEBOOL dir);
  TOLEBOOL        __fastcall SetCopyParamAlongDir(long count, double step, TOLEBOOL factor, 
                                                  TOLEBOOL dir);
  LPDISPATCH      __fastcall DeletedCollection();

  __property   long            count1 = {read = get_count1, write = set_count1};
  __property   double          step1 = {read = get_step1, write = set_step1};
  __property   TOLEBOOL        factor1 = {read = get_factor1, write = set_factor1};
  __property   long            count2 = {read = get_count2, write = set_count2};
  __property   double          step2 = {read = get_step2, write = set_step2};
  __property   TOLEBOOL        factor2 = {read = get_factor2, write = set_factor2};
  __property   TOLEBOOL        inverce = {read = get_inverce, write = set_inverce};
  __property   TOLEBOOL        keepAngle = {read = get_keepAngle, write = set_keepAngle};
};
typedef ksCircularPartArrayDefinitionDispT<ksCircularPartArrayDefinition> ksCircularPartArrayDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksCurvePartArrayDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DDD05146-C180-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksCurvePartArrayDefinitionDispT : public TAutoDriver<ksCurvePartArrayDefinition>
{
public:
  ksCurvePartArrayDefinitionDispT(){}

  ksCurvePartArrayDefinitionDispT(ksCurvePartArrayDefinition *pintf)
  {
    TAutoDriver<ksCurvePartArrayDefinition>::Bind(pintf, false);
  }

  ksCurvePartArrayDefinitionDispT(ksCurvePartArrayDefinitionPtr pintf)
  {
    TAutoDriver<ksCurvePartArrayDefinition>::Bind(pintf, true);
  }

  ksCurvePartArrayDefinitionDispT& operator=(ksCurvePartArrayDefinition *pintf)
  {
    TAutoDriver<ksCurvePartArrayDefinition>::Bind(pintf, false);
    return *this;
  }

  ksCurvePartArrayDefinitionDispT& operator=(ksCurvePartArrayDefinitionPtr pintf)
  {
    TAutoDriver<ksCurvePartArrayDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_CurvePartArrayDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_CurvePartArrayDefinition);
  }

  void            __fastcall set_count(long Value);
  long            __fastcall get_count();
  void            __fastcall set_step(double Value);
  double          __fastcall get_step();
  void            __fastcall set_factor(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_factor();
  void            __fastcall set_keepAngle(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_keepAngle();
  void            __fastcall set_fullCurve(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_fullCurve();
  void            __fastcall set_sence(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_sence();
  LPDISPATCH      __fastcall PartArray();
  LPDISPATCH      __fastcall CurveArray();
  LPDISPATCH      __fastcall DeletedCollection();

  __property   long            count = {read = get_count, write = set_count};
  __property   double          step = {read = get_step, write = set_step};
  __property   TOLEBOOL        factor = {read = get_factor, write = set_factor};
  __property   TOLEBOOL        keepAngle = {read = get_keepAngle, write = set_keepAngle};
  __property   TOLEBOOL        fullCurve = {read = get_fullCurve, write = set_fullCurve};
  __property   TOLEBOOL        sence = {read = get_sence, write = set_sence};
};
typedef ksCurvePartArrayDefinitionDispT<ksCurvePartArrayDefinition> ksCurvePartArrayDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksDerivativePartArrayDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DDD05149-C180-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksDerivativePartArrayDefinitionDispT : public TAutoDriver<ksDerivativePartArrayDefinition>
{
public:
  ksDerivativePartArrayDefinitionDispT(){}

  ksDerivativePartArrayDefinitionDispT(ksDerivativePartArrayDefinition *pintf)
  {
    TAutoDriver<ksDerivativePartArrayDefinition>::Bind(pintf, false);
  }

  ksDerivativePartArrayDefinitionDispT(ksDerivativePartArrayDefinitionPtr pintf)
  {
    TAutoDriver<ksDerivativePartArrayDefinition>::Bind(pintf, true);
  }

  ksDerivativePartArrayDefinitionDispT& operator=(ksDerivativePartArrayDefinition *pintf)
  {
    TAutoDriver<ksDerivativePartArrayDefinition>::Bind(pintf, false);
    return *this;
  }

  ksDerivativePartArrayDefinitionDispT& operator=(ksDerivativePartArrayDefinitionPtr pintf)
  {
    TAutoDriver<ksDerivativePartArrayDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_DerivativePartArrayDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_DerivativePartArrayDefinition);
  }

  LPDISPATCH      __fastcall PartArray();
  LPDISPATCH      __fastcall GetDeriv();
  TOLEBOOL        __fastcall SetDeriv(LPDISPATCH deriv);
  LPDISPATCH      __fastcall DeletedCollection();

};
typedef ksDerivativePartArrayDefinitionDispT<ksDerivativePartArrayDefinition> ksDerivativePartArrayDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksAxis2PlanesDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB81-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksAxis2PlanesDefinitionDispT : public TAutoDriver<ksAxis2PlanesDefinition>
{
public:
  ksAxis2PlanesDefinitionDispT(){}

  ksAxis2PlanesDefinitionDispT(ksAxis2PlanesDefinition *pintf)
  {
    TAutoDriver<ksAxis2PlanesDefinition>::Bind(pintf, false);
  }

  ksAxis2PlanesDefinitionDispT(ksAxis2PlanesDefinitionPtr pintf)
  {
    TAutoDriver<ksAxis2PlanesDefinition>::Bind(pintf, true);
  }

  ksAxis2PlanesDefinitionDispT& operator=(ksAxis2PlanesDefinition *pintf)
  {
    TAutoDriver<ksAxis2PlanesDefinition>::Bind(pintf, false);
    return *this;
  }

  ksAxis2PlanesDefinitionDispT& operator=(ksAxis2PlanesDefinitionPtr pintf)
  {
    TAutoDriver<ksAxis2PlanesDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Axis2PlanesDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Axis2PlanesDefinition);
  }

  TOLEBOOL        __fastcall SetPlane(long number, LPDISPATCH plane);
  LPDISPATCH      __fastcall GetPlane(long number);
  LPDISPATCH      __fastcall GetCurve3D();

};
typedef ksAxis2PlanesDefinitionDispT<ksAxis2PlanesDefinition> ksAxis2PlanesDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksAxisOperationsDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB84-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksAxisOperationsDefinitionDispT : public TAutoDriver<ksAxisOperationsDefinition>
{
public:
  ksAxisOperationsDefinitionDispT(){}

  ksAxisOperationsDefinitionDispT(ksAxisOperationsDefinition *pintf)
  {
    TAutoDriver<ksAxisOperationsDefinition>::Bind(pintf, false);
  }

  ksAxisOperationsDefinitionDispT(ksAxisOperationsDefinitionPtr pintf)
  {
    TAutoDriver<ksAxisOperationsDefinition>::Bind(pintf, true);
  }

  ksAxisOperationsDefinitionDispT& operator=(ksAxisOperationsDefinition *pintf)
  {
    TAutoDriver<ksAxisOperationsDefinition>::Bind(pintf, false);
    return *this;
  }

  ksAxisOperationsDefinitionDispT& operator=(ksAxisOperationsDefinitionPtr pintf)
  {
    TAutoDriver<ksAxisOperationsDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_AxisOperationsDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_AxisOperationsDefinition);
  }

  TOLEBOOL        __fastcall SetOperation(LPDISPATCH plane);
  LPDISPATCH      __fastcall GetOperation();
  LPDISPATCH      __fastcall GetCurve3D();

};
typedef ksAxisOperationsDefinitionDispT<ksAxisOperationsDefinition> ksAxisOperationsDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksAxis2PointsDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB87-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksAxis2PointsDefinitionDispT : public TAutoDriver<ksAxis2PointsDefinition>
{
public:
  ksAxis2PointsDefinitionDispT(){}

  ksAxis2PointsDefinitionDispT(ksAxis2PointsDefinition *pintf)
  {
    TAutoDriver<ksAxis2PointsDefinition>::Bind(pintf, false);
  }

  ksAxis2PointsDefinitionDispT(ksAxis2PointsDefinitionPtr pintf)
  {
    TAutoDriver<ksAxis2PointsDefinition>::Bind(pintf, true);
  }

  ksAxis2PointsDefinitionDispT& operator=(ksAxis2PointsDefinition *pintf)
  {
    TAutoDriver<ksAxis2PointsDefinition>::Bind(pintf, false);
    return *this;
  }

  ksAxis2PointsDefinitionDispT& operator=(ksAxis2PointsDefinitionPtr pintf)
  {
    TAutoDriver<ksAxis2PointsDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Axis2PointsDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Axis2PointsDefinition);
  }

  TOLEBOOL        __fastcall SetPoint(long number, LPDISPATCH point);
  LPDISPATCH      __fastcall GetPoint(long number);
  LPDISPATCH      __fastcall GetCurve3D();

};
typedef ksAxis2PointsDefinitionDispT<ksAxis2PointsDefinition> ksAxis2PointsDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksAxisEdgeDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB8A-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksAxisEdgeDefinitionDispT : public TAutoDriver<ksAxisEdgeDefinition>
{
public:
  ksAxisEdgeDefinitionDispT(){}

  ksAxisEdgeDefinitionDispT(ksAxisEdgeDefinition *pintf)
  {
    TAutoDriver<ksAxisEdgeDefinition>::Bind(pintf, false);
  }

  ksAxisEdgeDefinitionDispT(ksAxisEdgeDefinitionPtr pintf)
  {
    TAutoDriver<ksAxisEdgeDefinition>::Bind(pintf, true);
  }

  ksAxisEdgeDefinitionDispT& operator=(ksAxisEdgeDefinition *pintf)
  {
    TAutoDriver<ksAxisEdgeDefinition>::Bind(pintf, false);
    return *this;
  }

  ksAxisEdgeDefinitionDispT& operator=(ksAxisEdgeDefinitionPtr pintf)
  {
    TAutoDriver<ksAxisEdgeDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_AxisEdgeDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_AxisEdgeDefinition);
  }

  TOLEBOOL        __fastcall SetEdge(LPDISPATCH edge);
  LPDISPATCH      __fastcall GetEdge();
  LPDISPATCH      __fastcall GetCurve3D();

};
typedef ksAxisEdgeDefinitionDispT<ksAxisEdgeDefinition> ksAxisEdgeDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksMeshCopyDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB8D-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksMeshCopyDefinitionDispT : public TAutoDriver<ksMeshCopyDefinition>
{
public:
  ksMeshCopyDefinitionDispT(){}

  ksMeshCopyDefinitionDispT(ksMeshCopyDefinition *pintf)
  {
    TAutoDriver<ksMeshCopyDefinition>::Bind(pintf, false);
  }

  ksMeshCopyDefinitionDispT(ksMeshCopyDefinitionPtr pintf)
  {
    TAutoDriver<ksMeshCopyDefinition>::Bind(pintf, true);
  }

  ksMeshCopyDefinitionDispT& operator=(ksMeshCopyDefinition *pintf)
  {
    TAutoDriver<ksMeshCopyDefinition>::Bind(pintf, false);
    return *this;
  }

  ksMeshCopyDefinitionDispT& operator=(ksMeshCopyDefinitionPtr pintf)
  {
    TAutoDriver<ksMeshCopyDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_MeshCopyDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_MeshCopyDefinition);
  }

  void            __fastcall set_angle1(double Value);
  double          __fastcall get_angle1();
  void            __fastcall set_count1(long Value);
  long            __fastcall get_count1();
  void            __fastcall set_step1(double Value);
  double          __fastcall get_step1();
  void            __fastcall set_factor1(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_factor1();
  void            __fastcall set_angle2(double Value);
  double          __fastcall get_angle2();
  void            __fastcall set_count2(long Value);
  long            __fastcall get_count2();
  void            __fastcall set_step2(double Value);
  double          __fastcall get_step2();
  void            __fastcall set_factor2(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_factor2();
  void            __fastcall set_insideFlag(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_insideFlag();
  void            __fastcall set_geomArray(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_geomArray();
  LPDISPATCH      __fastcall OperationArray();
  TOLEBOOL        __fastcall GetCopyParamAlongAxis(TOLEBOOL firstAxis, double* angle, long* count, 
                                                   double* step, TOLEBOOL* factor);
  TOLEBOOL        __fastcall SetCopyParamAlongAxis(TOLEBOOL firstAxis, double angle, long count, 
                                                   double step, TOLEBOOL factor);
  LPDISPATCH      __fastcall DeletedCollection();
  LPDISPATCH      __fastcall GetAxis1();
  TOLEBOOL        __fastcall SetAxis1(LPDISPATCH axis);
  LPDISPATCH      __fastcall GetAxis2();
  TOLEBOOL        __fastcall SetAxis2(LPDISPATCH axis);

  __property   double          angle1 = {read = get_angle1, write = set_angle1};
  __property   long            count1 = {read = get_count1, write = set_count1};
  __property   double          step1 = {read = get_step1, write = set_step1};
  __property   TOLEBOOL        factor1 = {read = get_factor1, write = set_factor1};
  __property   double          angle2 = {read = get_angle2, write = set_angle2};
  __property   long            count2 = {read = get_count2, write = set_count2};
  __property   double          step2 = {read = get_step2, write = set_step2};
  __property   TOLEBOOL        factor2 = {read = get_factor2, write = set_factor2};
  __property   TOLEBOOL        insideFlag = {read = get_insideFlag, write = set_insideFlag};
  __property   TOLEBOOL        geomArray = {read = get_geomArray, write = set_geomArray};
};
typedef ksMeshCopyDefinitionDispT<ksMeshCopyDefinition> ksMeshCopyDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksCircularCopyDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB90-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksCircularCopyDefinitionDispT : public TAutoDriver<ksCircularCopyDefinition>
{
public:
  ksCircularCopyDefinitionDispT(){}

  ksCircularCopyDefinitionDispT(ksCircularCopyDefinition *pintf)
  {
    TAutoDriver<ksCircularCopyDefinition>::Bind(pintf, false);
  }

  ksCircularCopyDefinitionDispT(ksCircularCopyDefinitionPtr pintf)
  {
    TAutoDriver<ksCircularCopyDefinition>::Bind(pintf, true);
  }

  ksCircularCopyDefinitionDispT& operator=(ksCircularCopyDefinition *pintf)
  {
    TAutoDriver<ksCircularCopyDefinition>::Bind(pintf, false);
    return *this;
  }

  ksCircularCopyDefinitionDispT& operator=(ksCircularCopyDefinitionPtr pintf)
  {
    TAutoDriver<ksCircularCopyDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_CircularCopyDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_CircularCopyDefinition);
  }

  void            __fastcall set_count1(long Value);
  long            __fastcall get_count1();
  void            __fastcall set_step1(double Value);
  double          __fastcall get_step1();
  void            __fastcall set_factor1(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_factor1();
  void            __fastcall set_count2(long Value);
  long            __fastcall get_count2();
  void            __fastcall set_step2(double Value);
  double          __fastcall get_step2();
  void            __fastcall set_factor2(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_factor2();
  void            __fastcall set_inverce(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_inverce();
  void            __fastcall set_geomArray(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_geomArray();
  LPDISPATCH      __fastcall GetOperationArray();
  LPDISPATCH      __fastcall GetAxis();
  TOLEBOOL        __fastcall SetAxis(LPDISPATCH axis);
  TOLEBOOL        __fastcall GetCopyParamAlongDir(long* count, double* step, TOLEBOOL* factor, 
                                                  TOLEBOOL dir);
  TOLEBOOL        __fastcall SetCopyParamAlongDir(long count, double step, TOLEBOOL factor, 
                                                  TOLEBOOL dir);
  LPDISPATCH      __fastcall DeletedCollection();

  __property   long            count1 = {read = get_count1, write = set_count1};
  __property   double          step1 = {read = get_step1, write = set_step1};
  __property   TOLEBOOL        factor1 = {read = get_factor1, write = set_factor1};
  __property   long            count2 = {read = get_count2, write = set_count2};
  __property   double          step2 = {read = get_step2, write = set_step2};
  __property   TOLEBOOL        factor2 = {read = get_factor2, write = set_factor2};
  __property   TOLEBOOL        inverce = {read = get_inverce, write = set_inverce};
  __property   TOLEBOOL        geomArray = {read = get_geomArray, write = set_geomArray};
};
typedef ksCircularCopyDefinitionDispT<ksCircularCopyDefinition> ksCircularCopyDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksCurveCopyDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB93-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksCurveCopyDefinitionDispT : public TAutoDriver<ksCurveCopyDefinition>
{
public:
  ksCurveCopyDefinitionDispT(){}

  ksCurveCopyDefinitionDispT(ksCurveCopyDefinition *pintf)
  {
    TAutoDriver<ksCurveCopyDefinition>::Bind(pintf, false);
  }

  ksCurveCopyDefinitionDispT(ksCurveCopyDefinitionPtr pintf)
  {
    TAutoDriver<ksCurveCopyDefinition>::Bind(pintf, true);
  }

  ksCurveCopyDefinitionDispT& operator=(ksCurveCopyDefinition *pintf)
  {
    TAutoDriver<ksCurveCopyDefinition>::Bind(pintf, false);
    return *this;
  }

  ksCurveCopyDefinitionDispT& operator=(ksCurveCopyDefinitionPtr pintf)
  {
    TAutoDriver<ksCurveCopyDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_CurveCopyDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_CurveCopyDefinition);
  }

  void            __fastcall set_count(long Value);
  long            __fastcall get_count();
  void            __fastcall set_step(double Value);
  double          __fastcall get_step();
  void            __fastcall set_factor(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_factor();
  void            __fastcall set_keepAngle(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_keepAngle();
  void            __fastcall set_fullCurve(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_fullCurve();
  void            __fastcall set_sence(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_sence();
  void            __fastcall set_geomArray(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_geomArray();
  LPDISPATCH      __fastcall OperationArray();
  LPDISPATCH      __fastcall CurveArray();
  LPDISPATCH      __fastcall DeletedCollection();

  __property   long            count = {read = get_count, write = set_count};
  __property   double          step = {read = get_step, write = set_step};
  __property   TOLEBOOL        factor = {read = get_factor, write = set_factor};
  __property   TOLEBOOL        keepAngle = {read = get_keepAngle, write = set_keepAngle};
  __property   TOLEBOOL        fullCurve = {read = get_fullCurve, write = set_fullCurve};
  __property   TOLEBOOL        sence = {read = get_sence, write = set_sence};
  __property   TOLEBOOL        geomArray = {read = get_geomArray, write = set_geomArray};
};
typedef ksCurveCopyDefinitionDispT<ksCurveCopyDefinition> ksCurveCopyDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksMirrorCopyDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB96-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksMirrorCopyDefinitionDispT : public TAutoDriver<ksMirrorCopyDefinition>
{
public:
  ksMirrorCopyDefinitionDispT(){}

  ksMirrorCopyDefinitionDispT(ksMirrorCopyDefinition *pintf)
  {
    TAutoDriver<ksMirrorCopyDefinition>::Bind(pintf, false);
  }

  ksMirrorCopyDefinitionDispT(ksMirrorCopyDefinitionPtr pintf)
  {
    TAutoDriver<ksMirrorCopyDefinition>::Bind(pintf, true);
  }

  ksMirrorCopyDefinitionDispT& operator=(ksMirrorCopyDefinition *pintf)
  {
    TAutoDriver<ksMirrorCopyDefinition>::Bind(pintf, false);
    return *this;
  }

  ksMirrorCopyDefinitionDispT& operator=(ksMirrorCopyDefinitionPtr pintf)
  {
    TAutoDriver<ksMirrorCopyDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_MirrorCopyDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_MirrorCopyDefinition);
  }

  LPDISPATCH      __fastcall GetOperationArray();
  LPDISPATCH      __fastcall GetPlane();
  TOLEBOOL        __fastcall SetPlane(LPDISPATCH plane);

};
typedef ksMirrorCopyDefinitionDispT<ksMirrorCopyDefinition> ksMirrorCopyDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksMirrorCopyAllDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB99-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksMirrorCopyAllDefinitionDispT : public TAutoDriver<ksMirrorCopyAllDefinition>
{
public:
  ksMirrorCopyAllDefinitionDispT(){}

  ksMirrorCopyAllDefinitionDispT(ksMirrorCopyAllDefinition *pintf)
  {
    TAutoDriver<ksMirrorCopyAllDefinition>::Bind(pintf, false);
  }

  ksMirrorCopyAllDefinitionDispT(ksMirrorCopyAllDefinitionPtr pintf)
  {
    TAutoDriver<ksMirrorCopyAllDefinition>::Bind(pintf, true);
  }

  ksMirrorCopyAllDefinitionDispT& operator=(ksMirrorCopyAllDefinition *pintf)
  {
    TAutoDriver<ksMirrorCopyAllDefinition>::Bind(pintf, false);
    return *this;
  }

  ksMirrorCopyAllDefinitionDispT& operator=(ksMirrorCopyAllDefinitionPtr pintf)
  {
    TAutoDriver<ksMirrorCopyAllDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_MirrorCopyAllDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_MirrorCopyAllDefinition);
  }

  LPDISPATCH      __fastcall GetPlane();
  TOLEBOOL        __fastcall SetPlane(LPDISPATCH plane);
  LPDISPATCH      __fastcall ChooseBodies();

};
typedef ksMirrorCopyAllDefinitionDispT<ksMirrorCopyAllDefinition> ksMirrorCopyAllDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksConicSpiralDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB9C-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksConicSpiralDefinitionDispT : public TAutoDriver<ksConicSpiralDefinition>
{
public:
  ksConicSpiralDefinitionDispT(){}

  ksConicSpiralDefinitionDispT(ksConicSpiralDefinition *pintf)
  {
    TAutoDriver<ksConicSpiralDefinition>::Bind(pintf, false);
  }

  ksConicSpiralDefinitionDispT(ksConicSpiralDefinitionPtr pintf)
  {
    TAutoDriver<ksConicSpiralDefinition>::Bind(pintf, true);
  }

  ksConicSpiralDefinitionDispT& operator=(ksConicSpiralDefinition *pintf)
  {
    TAutoDriver<ksConicSpiralDefinition>::Bind(pintf, false);
    return *this;
  }

  ksConicSpiralDefinitionDispT& operator=(ksConicSpiralDefinitionPtr pintf)
  {
    TAutoDriver<ksConicSpiralDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ConicSpiralDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ConicSpiralDefinition);
  }

  void            __fastcall set_turn(double Value);
  double          __fastcall get_turn();
  void            __fastcall set_step(double Value);
  double          __fastcall get_step();
  void            __fastcall set_turnDir(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_turnDir();
  void            __fastcall set_buildMode(short Value);
  short           __fastcall get_buildMode();
  void            __fastcall set_buildDir(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_buildDir();
  void            __fastcall set_height(double Value);
  double          __fastcall get_height();
  void            __fastcall set_heightType(short Value);
  short           __fastcall get_heightType();
  void            __fastcall set_heightAdd(double Value);
  double          __fastcall get_heightAdd();
  void            __fastcall set_heightAddHow(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_heightAddHow();
  void            __fastcall set_initialDiam(double Value);
  double          __fastcall get_initialDiam();
  void            __fastcall set_initialDiamType(short Value);
  short           __fastcall get_initialDiamType();
  void            __fastcall set_terminalDiam(double Value);
  double          __fastcall get_terminalDiam();
  void            __fastcall set_terminalDiamType(short Value);
  short           __fastcall get_terminalDiamType();
  void            __fastcall set_tiltAngleHow(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_tiltAngleHow();
  void            __fastcall set_firstAngle(double Value);
  double          __fastcall get_firstAngle();
  void            __fastcall set_tiltAngle(double Value);
  double          __fastcall get_tiltAngle();
  LPDISPATCH      __fastcall GetPlane();
  TOLEBOOL        __fastcall SetPlane(LPDISPATCH plane);
  TOLEBOOL        __fastcall GetLocation(double* x, double* y);
  TOLEBOOL        __fastcall SetLocation(double x, double y);
  LPDISPATCH      __fastcall GetHeightObject();
  TOLEBOOL        __fastcall SetHeightObject(LPDISPATCH heightObject);
  LPDISPATCH      __fastcall GetInitialDiamObject();
  TOLEBOOL        __fastcall SetInitialDiamObject(LPDISPATCH initialDiamObject);
  LPDISPATCH      __fastcall GetTerminalDiamObject();
  TOLEBOOL        __fastcall SetTerminalDiamObject(LPDISPATCH terminalDiamObject);
  LPDISPATCH      __fastcall GetSketch();

  __property   double          turn = {read = get_turn, write = set_turn};
  __property   double          step = {read = get_step, write = set_step};
  __property   TOLEBOOL        turnDir = {read = get_turnDir, write = set_turnDir};
  __property   short           buildMode = {read = get_buildMode, write = set_buildMode};
  __property   TOLEBOOL        buildDir = {read = get_buildDir, write = set_buildDir};
  __property   double          height = {read = get_height, write = set_height};
  __property   short           heightType = {read = get_heightType, write = set_heightType};
  __property   double          heightAdd = {read = get_heightAdd, write = set_heightAdd};
  __property   TOLEBOOL        heightAddHow = {read = get_heightAddHow, write = set_heightAddHow};
  __property   double          initialDiam = {read = get_initialDiam, write = set_initialDiam};
  __property   short           initialDiamType = {read = get_initialDiamType, write = set_initialDiamType};
  __property   double          terminalDiam = {read = get_terminalDiam, write = set_terminalDiam};
  __property   short           terminalDiamType = {read = get_terminalDiamType, write = set_terminalDiamType};
  __property   TOLEBOOL        tiltAngleHow = {read = get_tiltAngleHow, write = set_tiltAngleHow};
  __property   double          firstAngle = {read = get_firstAngle, write = set_firstAngle};
  __property   double          tiltAngle = {read = get_tiltAngle, write = set_tiltAngle};
};
typedef ksConicSpiralDefinitionDispT<ksConicSpiralDefinition> ksConicSpiralDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksCylindricSpiralDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB9F-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksCylindricSpiralDefinitionDispT : public TAutoDriver<ksCylindricSpiralDefinition>
{
public:
  ksCylindricSpiralDefinitionDispT(){}

  ksCylindricSpiralDefinitionDispT(ksCylindricSpiralDefinition *pintf)
  {
    TAutoDriver<ksCylindricSpiralDefinition>::Bind(pintf, false);
  }

  ksCylindricSpiralDefinitionDispT(ksCylindricSpiralDefinitionPtr pintf)
  {
    TAutoDriver<ksCylindricSpiralDefinition>::Bind(pintf, true);
  }

  ksCylindricSpiralDefinitionDispT& operator=(ksCylindricSpiralDefinition *pintf)
  {
    TAutoDriver<ksCylindricSpiralDefinition>::Bind(pintf, false);
    return *this;
  }

  ksCylindricSpiralDefinitionDispT& operator=(ksCylindricSpiralDefinitionPtr pintf)
  {
    TAutoDriver<ksCylindricSpiralDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_CylindricSpiralDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_CylindricSpiralDefinition);
  }

  void            __fastcall set_turn(double Value);
  double          __fastcall get_turn();
  void            __fastcall set_step(double Value);
  double          __fastcall get_step();
  void            __fastcall set_turnDir(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_turnDir();
  void            __fastcall set_buildMode(short Value);
  short           __fastcall get_buildMode();
  void            __fastcall set_buildDir(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_buildDir();
  void            __fastcall set_height(double Value);
  double          __fastcall get_height();
  void            __fastcall set_heightType(short Value);
  short           __fastcall get_heightType();
  void            __fastcall set_heightAdd(double Value);
  double          __fastcall get_heightAdd();
  void            __fastcall set_heightAddHow(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_heightAddHow();
  void            __fastcall set_diam(double Value);
  double          __fastcall get_diam();
  void            __fastcall set_diamType(short Value);
  short           __fastcall get_diamType();
  void            __fastcall set_firstAngle(double Value);
  double          __fastcall get_firstAngle();
  LPDISPATCH      __fastcall GetPlane();
  TOLEBOOL        __fastcall SetPlane(LPDISPATCH plane);
  TOLEBOOL        __fastcall GetLocation(double* x, double* y);
  TOLEBOOL        __fastcall SetLocation(double x, double y);
  LPDISPATCH      __fastcall GetHeightObject();
  TOLEBOOL        __fastcall SetHeightObject(LPDISPATCH heightObject);
  LPDISPATCH      __fastcall GetDiamObject();
  TOLEBOOL        __fastcall SetDiamObject(LPDISPATCH diamObject);
  LPDISPATCH      __fastcall GetSketch();

  __property   double          turn = {read = get_turn, write = set_turn};
  __property   double          step = {read = get_step, write = set_step};
  __property   TOLEBOOL        turnDir = {read = get_turnDir, write = set_turnDir};
  __property   short           buildMode = {read = get_buildMode, write = set_buildMode};
  __property   TOLEBOOL        buildDir = {read = get_buildDir, write = set_buildDir};
  __property   double          height = {read = get_height, write = set_height};
  __property   short           heightType = {read = get_heightType, write = set_heightType};
  __property   double          heightAdd = {read = get_heightAdd, write = set_heightAdd};
  __property   TOLEBOOL        heightAddHow = {read = get_heightAddHow, write = set_heightAddHow};
  __property   double          diam = {read = get_diam, write = set_diam};
  __property   short           diamType = {read = get_diamType, write = set_diamType};
  __property   double          firstAngle = {read = get_firstAngle, write = set_firstAngle};
};
typedef ksCylindricSpiralDefinitionDispT<ksCylindricSpiralDefinition> ksCylindricSpiralDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksPolyLineDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BBA2-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksPolyLineDefinitionDispT : public TAutoDriver<ksPolyLineDefinition>
{
public:
  ksPolyLineDefinitionDispT(){}

  ksPolyLineDefinitionDispT(ksPolyLineDefinition *pintf)
  {
    TAutoDriver<ksPolyLineDefinition>::Bind(pintf, false);
  }

  ksPolyLineDefinitionDispT(ksPolyLineDefinitionPtr pintf)
  {
    TAutoDriver<ksPolyLineDefinition>::Bind(pintf, true);
  }

  ksPolyLineDefinitionDispT& operator=(ksPolyLineDefinition *pintf)
  {
    TAutoDriver<ksPolyLineDefinition>::Bind(pintf, false);
    return *this;
  }

  ksPolyLineDefinitionDispT& operator=(ksPolyLineDefinitionPtr pintf)
  {
    TAutoDriver<ksPolyLineDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_PolyLineDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_PolyLineDefinition);
  }

  void            __fastcall set_closed(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_closed();
  void            __fastcall set_vertexVisible(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_vertexVisible();
  long            __fastcall GetCountVertex();
  TOLEBOOL        __fastcall AddVertex(double x, double y, double z, double radius);
  TOLEBOOL        __fastcall InsertVertex(long index, double x, double y, double z, double radius);
  TOLEBOOL        __fastcall DeleteVertex(long index);
  TOLEBOOL        __fastcall GetParamVertex(long index, double* x, double* y, double* z, 
                                            double* radius);
  TOLEBOOL        __fastcall Flush();
  TOLEBOOL        __fastcall ReadFromFile(BSTR fileName);
  TOLEBOOL        __fastcall WriteToFile(BSTR fileName);
  LPDISPATCH      __fastcall EdgeCollection();
  Kompas6api5_tlb::ksPolyLineVertexParamPtr __fastcall AddPointWithParams(long index);
  Kompas6api5_tlb::ksPolyLineVertexParamPtr __fastcall GetPointParams(long index);

  __property   TOLEBOOL        closed = {read = get_closed, write = set_closed};
  __property   TOLEBOOL        vertexVisible = {read = get_vertexVisible, write = set_vertexVisible};
};
typedef ksPolyLineDefinitionDispT<ksPolyLineDefinition> ksPolyLineDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksPolyLineVertexParam
// Flags:     (4096) Dispatchable
// GUID:      {1BCC4F0F-1091-41A3-895B-0608D20715B7}
// *********************************************************************//
template<class T>
class ksPolyLineVertexParamDispT : public TAutoDriver<ksPolyLineVertexParam>
{
public:
  ksPolyLineVertexParamDispT(){}

  ksPolyLineVertexParamDispT(ksPolyLineVertexParam *pintf)
  {
    TAutoDriver<ksPolyLineVertexParam>::Bind(pintf, false);
  }

  ksPolyLineVertexParamDispT(ksPolyLineVertexParamPtr pintf)
  {
    TAutoDriver<ksPolyLineVertexParam>::Bind(pintf, true);
  }

  ksPolyLineVertexParamDispT& operator=(ksPolyLineVertexParam *pintf)
  {
    TAutoDriver<ksPolyLineVertexParam>::Bind(pintf, false);
    return *this;
  }

  ksPolyLineVertexParamDispT& operator=(ksPolyLineVertexParamPtr pintf)
  {
    TAutoDriver<ksPolyLineVertexParam>::Bind(pintf, true);
    return *this;
  }

  void            __fastcall set_buildingType(long Value);
  long            __fastcall get_buildingType();
  TOLEBOOL        __fastcall GetParamVertex(double* x, double* y, double* z, double* radius);
  TOLEBOOL        __fastcall SetParamVertex(double x, double y, double z, double radius);
  TOLEBOOL        __fastcall SetParamByVertex(Kompas6api5_tlb::ksEntityPtr vertex, double radius);
  TOLEBOOL        __fastcall GetParamByDistance(double* distance, double* radius);
  TOLEBOOL        __fastcall SetParamByDistance(double distance, double radius);
  Kompas6api5_tlb::ksEntityPtr __fastcall GetBuildingObject();
  TOLEBOOL        __fastcall SetBuildingObject(Kompas6api5_tlb::ksEntityPtr object);
  Kompas6api5_tlb::ksEntityPtr __fastcall GetAssociation();
  TOLEBOOL        __fastcall SetAssociation(Kompas6api5_tlb::ksEntityPtr vertex);
  Kompas6api5_tlb::ksEntityPtr __fastcall GetVertex();
  int             __fastcall GetIndex();

  __property   long            buildingType = {read = get_buildingType, write = set_buildingType};
};
typedef ksPolyLineVertexParamDispT<ksPolyLineVertexParam> ksPolyLineVertexParamDisp;

// *********************************************************************//
// DispIntf:  ksSplineDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BBA5-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksSplineDefinitionDispT : public TAutoDriver<ksSplineDefinition>
{
public:
  ksSplineDefinitionDispT(){}

  ksSplineDefinitionDispT(ksSplineDefinition *pintf)
  {
    TAutoDriver<ksSplineDefinition>::Bind(pintf, false);
  }

  ksSplineDefinitionDispT(ksSplineDefinitionPtr pintf)
  {
    TAutoDriver<ksSplineDefinition>::Bind(pintf, true);
  }

  ksSplineDefinitionDispT& operator=(ksSplineDefinition *pintf)
  {
    TAutoDriver<ksSplineDefinition>::Bind(pintf, false);
    return *this;
  }

  ksSplineDefinitionDispT& operator=(ksSplineDefinitionPtr pintf)
  {
    TAutoDriver<ksSplineDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_SplineDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_SplineDefinition);
  }

  void            __fastcall set_closed(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_closed();
  void            __fastcall set_splineOnPoles(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_splineOnPoles();
  void            __fastcall set_degree(long Value);
  long            __fastcall get_degree();
  long            __fastcall GetCountVertex();
  TOLEBOOL        __fastcall AddVertex(double x, double y, double z, double radius);
  TOLEBOOL        __fastcall InsertVertex(long index, double x, double y, double z, double weight);
  TOLEBOOL        __fastcall DeleteVertex(long index);
  TOLEBOOL        __fastcall GetParamVertex(long index, double* x, double* y, double* z, 
                                            double* weight);
  TOLEBOOL        __fastcall Flush();
  TOLEBOOL        __fastcall ReadFromFile(BSTR fileName);
  TOLEBOOL        __fastcall WriteToFile(BSTR fileName);
  TOLEBOOL        __fastcall AddVertexAndAssociation(long index, LPDISPATCH obj, double weight);
  TOLEBOOL        __fastcall SetAssociation(long index, LPDISPATCH obj);
  LPDISPATCH      __fastcall GetAssociation(long index);

  __property   TOLEBOOL        closed = {read = get_closed, write = set_closed};
  __property   TOLEBOOL        splineOnPoles = {read = get_splineOnPoles, write = set_splineOnPoles};
  __property   long            degree = {read = get_degree, write = set_degree};
};
typedef ksSplineDefinitionDispT<ksSplineDefinition> ksSplineDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksBaseExtrusionDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFE1-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksBaseExtrusionDefinitionDispT : public TAutoDriver<ksBaseExtrusionDefinition>
{
public:
  ksBaseExtrusionDefinitionDispT(){}

  ksBaseExtrusionDefinitionDispT(ksBaseExtrusionDefinition *pintf)
  {
    TAutoDriver<ksBaseExtrusionDefinition>::Bind(pintf, false);
  }

  ksBaseExtrusionDefinitionDispT(ksBaseExtrusionDefinitionPtr pintf)
  {
    TAutoDriver<ksBaseExtrusionDefinition>::Bind(pintf, true);
  }

  ksBaseExtrusionDefinitionDispT& operator=(ksBaseExtrusionDefinition *pintf)
  {
    TAutoDriver<ksBaseExtrusionDefinition>::Bind(pintf, false);
    return *this;
  }

  ksBaseExtrusionDefinitionDispT& operator=(ksBaseExtrusionDefinitionPtr pintf)
  {
    TAutoDriver<ksBaseExtrusionDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_BaseExtrusionDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_BaseExtrusionDefinition);
  }

  void            __fastcall set_directionType(short Value);
  short           __fastcall get_directionType();
  TOLEBOOL        __fastcall SetSketch(LPDISPATCH sketch);
  LPDISPATCH      __fastcall GetSketch();
  TOLEBOOL        __fastcall GetSideParam(TOLEBOOL side1, short* type, double* depth, 
                                          double* draftValue, TOLEBOOL* draftOutward);
  TOLEBOOL        __fastcall SetSideParam(TOLEBOOL side1, short type/*[def,opt]*/, 
                                          double depth/*[def,opt]*/, double draftValue/*[def,opt]*/
                                          , TOLEBOOL draftOutward/*[def,opt]*/);
  TOLEBOOL        __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                          double* reverseTthickness);
  TOLEBOOL        __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                          double normalThickness/*[def,opt]*/, 
                                          double reverseThickness/*[def,opt]*/);
  LPDISPATCH      __fastcall ThinParam();
  LPDISPATCH      __fastcall ExtrusionParam();
  LPDISPATCH      __fastcall GetDepthObject(TOLEBOOL normal);
  TOLEBOOL        __fastcall SetDepthObject(TOLEBOOL normal, LPDISPATCH obj);
  TOLEBOOL        __fastcall ResetDepthObject(TOLEBOOL normal);

  __property   short           directionType = {read = get_directionType, write = set_directionType};
};
typedef ksBaseExtrusionDefinitionDispT<ksBaseExtrusionDefinition> ksBaseExtrusionDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksBossExtrusionDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFE4-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksBossExtrusionDefinitionDispT : public TAutoDriver<ksBossExtrusionDefinition>
{
public:
  ksBossExtrusionDefinitionDispT(){}

  ksBossExtrusionDefinitionDispT(ksBossExtrusionDefinition *pintf)
  {
    TAutoDriver<ksBossExtrusionDefinition>::Bind(pintf, false);
  }

  ksBossExtrusionDefinitionDispT(ksBossExtrusionDefinitionPtr pintf)
  {
    TAutoDriver<ksBossExtrusionDefinition>::Bind(pintf, true);
  }

  ksBossExtrusionDefinitionDispT& operator=(ksBossExtrusionDefinition *pintf)
  {
    TAutoDriver<ksBossExtrusionDefinition>::Bind(pintf, false);
    return *this;
  }

  ksBossExtrusionDefinitionDispT& operator=(ksBossExtrusionDefinitionPtr pintf)
  {
    TAutoDriver<ksBossExtrusionDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_BossExtrusionDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_BossExtrusionDefinition);
  }

  void            __fastcall set_directionType(short Value);
  short           __fastcall get_directionType();
  TOLEBOOL        __fastcall SetSketch(LPDISPATCH sketch);
  LPDISPATCH      __fastcall GetSketch();
  TOLEBOOL        __fastcall GetSideParam(TOLEBOOL side1, short* type, double* depth, 
                                          double* draftValue, TOLEBOOL* draftOutward);
  TOLEBOOL        __fastcall SetSideParam(TOLEBOOL side1, short type/*[def,opt]*/, 
                                          double depth/*[def,opt]*/, double draftValue/*[def,opt]*/
                                          , TOLEBOOL draftOutward/*[def,opt]*/);
  TOLEBOOL        __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                          double* reverseTthickness);
  TOLEBOOL        __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                          double normalThickness/*[def,opt]*/, 
                                          double reverseThickness/*[def,opt]*/);
  LPDISPATCH      __fastcall ThinParam();
  LPDISPATCH      __fastcall ExtrusionParam();
  LPDISPATCH      __fastcall GetDepthObject(TOLEBOOL normal);
  TOLEBOOL        __fastcall SetDepthObject(TOLEBOOL normal, LPDISPATCH obj);
  TOLEBOOL        __fastcall ResetDepthObject(TOLEBOOL normal);
  LPDISPATCH      __fastcall ChooseBodies();

  __property   short           directionType = {read = get_directionType, write = set_directionType};
};
typedef ksBossExtrusionDefinitionDispT<ksBossExtrusionDefinition> ksBossExtrusionDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksCutExtrusionDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFE7-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksCutExtrusionDefinitionDispT : public TAutoDriver<ksCutExtrusionDefinition>
{
public:
  ksCutExtrusionDefinitionDispT(){}

  ksCutExtrusionDefinitionDispT(ksCutExtrusionDefinition *pintf)
  {
    TAutoDriver<ksCutExtrusionDefinition>::Bind(pintf, false);
  }

  ksCutExtrusionDefinitionDispT(ksCutExtrusionDefinitionPtr pintf)
  {
    TAutoDriver<ksCutExtrusionDefinition>::Bind(pintf, true);
  }

  ksCutExtrusionDefinitionDispT& operator=(ksCutExtrusionDefinition *pintf)
  {
    TAutoDriver<ksCutExtrusionDefinition>::Bind(pintf, false);
    return *this;
  }

  ksCutExtrusionDefinitionDispT& operator=(ksCutExtrusionDefinitionPtr pintf)
  {
    TAutoDriver<ksCutExtrusionDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_CutExtrusionDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_CutExtrusionDefinition);
  }

  void            __fastcall set_directionType(short Value);
  short           __fastcall get_directionType();
  void            __fastcall set_cut(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_cut();
  void            __fastcall set_chooseType(long Value);
  long            __fastcall get_chooseType();
  TOLEBOOL        __fastcall SetSketch(LPDISPATCH sketch);
  LPDISPATCH      __fastcall GetSketch();
  TOLEBOOL        __fastcall GetSideParam(TOLEBOOL side1, short* type, double* depth, 
                                          double* draftValue, TOLEBOOL* draftOutward);
  TOLEBOOL        __fastcall SetSideParam(TOLEBOOL side1, short type/*[def,opt]*/, 
                                          double depth/*[def,opt]*/, double draftValue/*[def,opt]*/
                                          , TOLEBOOL draftOutward/*[def,opt]*/);
  TOLEBOOL        __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                          double* reverseTthickness);
  TOLEBOOL        __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                          double normalThickness/*[def,opt]*/, 
                                          double reverseThickness/*[def,opt]*/);
  LPDISPATCH      __fastcall ThinParam();
  LPDISPATCH      __fastcall ExtrusionParam();
  LPDISPATCH      __fastcall GetDepthObject(TOLEBOOL normal);
  TOLEBOOL        __fastcall SetDepthObject(TOLEBOOL normal, LPDISPATCH obj);
  TOLEBOOL        __fastcall ResetDepthObject(TOLEBOOL normal);
  LPDISPATCH      __fastcall ChooseBodies();
  LPDISPATCH      __fastcall ChooseParts();

  __property   short           directionType = {read = get_directionType, write = set_directionType};
  __property   TOLEBOOL        cut = {read = get_cut, write = set_cut};
  __property   long            chooseType = {read = get_chooseType, write = set_chooseType};
};
typedef ksCutExtrusionDefinitionDispT<ksCutExtrusionDefinition> ksCutExtrusionDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksExtrusionSurfaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {B20E24C3-5E4A-4CDA-A1ED-6BB8EBC81A29}
// *********************************************************************//
template<class T>
class ksExtrusionSurfaceDefinitionDispT : public TAutoDriver<ksExtrusionSurfaceDefinition>
{
public:
  ksExtrusionSurfaceDefinitionDispT(){}

  ksExtrusionSurfaceDefinitionDispT(ksExtrusionSurfaceDefinition *pintf)
  {
    TAutoDriver<ksExtrusionSurfaceDefinition>::Bind(pintf, false);
  }

  ksExtrusionSurfaceDefinitionDispT(ksExtrusionSurfaceDefinitionPtr pintf)
  {
    TAutoDriver<ksExtrusionSurfaceDefinition>::Bind(pintf, true);
  }

  ksExtrusionSurfaceDefinitionDispT& operator=(ksExtrusionSurfaceDefinition *pintf)
  {
    TAutoDriver<ksExtrusionSurfaceDefinition>::Bind(pintf, false);
    return *this;
  }

  ksExtrusionSurfaceDefinitionDispT& operator=(ksExtrusionSurfaceDefinitionPtr pintf)
  {
    TAutoDriver<ksExtrusionSurfaceDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ExtrusionSurfaceDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ExtrusionSurfaceDefinition);
  }

  void            __fastcall set_directionType(short Value);
  short           __fastcall get_directionType();
  void            __fastcall set_closedShell(short Value);
  short           __fastcall get_closedShell();
  TOLEBOOL        __fastcall SetSketch(LPDISPATCH sketch);
  LPDISPATCH      __fastcall GetSketch();
  TOLEBOOL        __fastcall GetSideParam(TOLEBOOL side1, short* type, double* depth, 
                                          double* draftValue, TOLEBOOL* draftOutward);
  TOLEBOOL        __fastcall SetSideParam(TOLEBOOL side1, short type/*[def,opt]*/, 
                                          double depth/*[def,opt]*/, double draftValue/*[def,opt]*/
                                          , TOLEBOOL draftOutward/*[def,opt]*/);
  LPDISPATCH      __fastcall ExtrusionParam();
  LPDISPATCH      __fastcall GetDepthObject(TOLEBOOL normal);
  TOLEBOOL        __fastcall SetDepthObject(TOLEBOOL normal, LPDISPATCH obj);
  TOLEBOOL        __fastcall ResetDepthObject(TOLEBOOL normal);

  __property   short           directionType = {read = get_directionType, write = set_directionType};
  __property   short           closedShell = {read = get_closedShell, write = set_closedShell};
};
typedef ksExtrusionSurfaceDefinitionDispT<ksExtrusionSurfaceDefinition> ksExtrusionSurfaceDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksFaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BBA8-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksFaceDefinitionDispT : public TAutoDriver<ksFaceDefinition>
{
public:
  ksFaceDefinitionDispT(){}

  ksFaceDefinitionDispT(ksFaceDefinition *pintf)
  {
    TAutoDriver<ksFaceDefinition>::Bind(pintf, false);
  }

  ksFaceDefinitionDispT(ksFaceDefinitionPtr pintf)
  {
    TAutoDriver<ksFaceDefinition>::Bind(pintf, true);
  }

  ksFaceDefinitionDispT& operator=(ksFaceDefinition *pintf)
  {
    TAutoDriver<ksFaceDefinition>::Bind(pintf, false);
    return *this;
  }

  ksFaceDefinitionDispT& operator=(ksFaceDefinitionPtr pintf)
  {
    TAutoDriver<ksFaceDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_faceDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_faceDefinition);
  }

  TOLEBOOL        __fastcall IsPlanar();
  TOLEBOOL        __fastcall IsCone();
  TOLEBOOL        __fastcall IsCylinder();
  TOLEBOOL        __fastcall GetCylinderParam(double* h, double* r);
  LPDISPATCH      __fastcall GetOwnerEntity();
  LPDISPATCH      __fastcall GetSurface();
  LPDISPATCH      __fastcall LoopCollection();
  TOLEBOOL        __fastcall get_normalOrientation();
  TOLEBOOL        __fastcall IsConnectedWith(LPDISPATCH faceDefinition);
  LPDISPATCH      __fastcall ConnectedFaceCollection();
  LPDISPATCH      __fastcall EdgeCollection();
  LPDISPATCH      __fastcall GetNextFace();
  TOLEBOOL        __fastcall IsTorus();
  TOLEBOOL        __fastcall IsSphere();
  TOLEBOOL        __fastcall IsNurbsSurface();
  TOLEBOOL        __fastcall IsRevolved();
  TOLEBOOL        __fastcall IsSwept();
  LPDISPATCH      __fastcall GetTessellation();
  double          __fastcall GetArea(unsigned_long bitVector);
  LPDISPATCH      __fastcall GetEntity();
  TOLEBOOL        __fastcall IsValid();

  __property   TOLEBOOL        normalOrientation = {read = get_normalOrientation};
};
typedef ksFaceDefinitionDispT<ksFaceDefinition> ksFaceDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksEdgeDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BBAB-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksEdgeDefinitionDispT : public TAutoDriver<ksEdgeDefinition>
{
public:
  ksEdgeDefinitionDispT(){}

  ksEdgeDefinitionDispT(ksEdgeDefinition *pintf)
  {
    TAutoDriver<ksEdgeDefinition>::Bind(pintf, false);
  }

  ksEdgeDefinitionDispT(ksEdgeDefinitionPtr pintf)
  {
    TAutoDriver<ksEdgeDefinition>::Bind(pintf, true);
  }

  ksEdgeDefinitionDispT& operator=(ksEdgeDefinition *pintf)
  {
    TAutoDriver<ksEdgeDefinition>::Bind(pintf, false);
    return *this;
  }

  ksEdgeDefinitionDispT& operator=(ksEdgeDefinitionPtr pintf)
  {
    TAutoDriver<ksEdgeDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_EdgeDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_EdgeDefinition);
  }

  TOLEBOOL        __fastcall IsStraight();
  LPDISPATCH      __fastcall GetOwnerEntity();
  LPDISPATCH      __fastcall GetCurve3D();
  LPDISPATCH      __fastcall GetAdjacentFace(TOLEBOOL facePlus);
  LPDISPATCH      __fastcall GetVertex(TOLEBOOL start);
  LPDISPATCH      __fastcall EdgeCollection(TOLEBOOL begin);
  LPDISPATCH      __fastcall OrientedEdgeCollection();
  TOLEBOOL        __fastcall IsArc();
  TOLEBOOL        __fastcall IsCircle();
  TOLEBOOL        __fastcall IsEllipse();
  TOLEBOOL        __fastcall IsNurbs();
  TOLEBOOL        __fastcall IsPeriodic();
  double          __fastcall GetLength(unsigned_long bitVector);
  LPDISPATCH      __fastcall GetEntity();
  TOLEBOOL        __fastcall IsValid();

};
typedef ksEdgeDefinitionDispT<ksEdgeDefinition> ksEdgeDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksChamferDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BBAE-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksChamferDefinitionDispT : public TAutoDriver<ksChamferDefinition>
{
public:
  ksChamferDefinitionDispT(){}

  ksChamferDefinitionDispT(ksChamferDefinition *pintf)
  {
    TAutoDriver<ksChamferDefinition>::Bind(pintf, false);
  }

  ksChamferDefinitionDispT(ksChamferDefinitionPtr pintf)
  {
    TAutoDriver<ksChamferDefinition>::Bind(pintf, true);
  }

  ksChamferDefinitionDispT& operator=(ksChamferDefinition *pintf)
  {
    TAutoDriver<ksChamferDefinition>::Bind(pintf, false);
    return *this;
  }

  ksChamferDefinitionDispT& operator=(ksChamferDefinitionPtr pintf)
  {
    TAutoDriver<ksChamferDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ChamferDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ChamferDefinition);
  }

  void            __fastcall set_tangent(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_tangent();
  TOLEBOOL        __fastcall GetChamferParam(TOLEBOOL* transfer, double* distance1, 
                                             double* distance2);
  TOLEBOOL        __fastcall SetChamferParam(TOLEBOOL transfer, double distance1, double distance2);
  LPDISPATCH      __fastcall array();

  __property   TOLEBOOL        tangent = {read = get_tangent, write = set_tangent};
};
typedef ksChamferDefinitionDispT<ksChamferDefinition> ksChamferDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksFilletDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BBB1-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksFilletDefinitionDispT : public TAutoDriver<ksFilletDefinition>
{
public:
  ksFilletDefinitionDispT(){}

  ksFilletDefinitionDispT(ksFilletDefinition *pintf)
  {
    TAutoDriver<ksFilletDefinition>::Bind(pintf, false);
  }

  ksFilletDefinitionDispT(ksFilletDefinitionPtr pintf)
  {
    TAutoDriver<ksFilletDefinition>::Bind(pintf, true);
  }

  ksFilletDefinitionDispT& operator=(ksFilletDefinition *pintf)
  {
    TAutoDriver<ksFilletDefinition>::Bind(pintf, false);
    return *this;
  }

  ksFilletDefinitionDispT& operator=(ksFilletDefinitionPtr pintf)
  {
    TAutoDriver<ksFilletDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_FilletDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_FilletDefinition);
  }

  void            __fastcall set_radius(double Value);
  double          __fastcall get_radius();
  void            __fastcall set_tangent(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_tangent();
  LPDISPATCH      __fastcall array();

  __property   double          radius = {read = get_radius, write = set_radius};
  __property   TOLEBOOL        tangent = {read = get_tangent, write = set_tangent};
};
typedef ksFilletDefinitionDispT<ksFilletDefinition> ksFilletDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksBaseLoftDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFEA-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksBaseLoftDefinitionDispT : public TAutoDriver<ksBaseLoftDefinition>
{
public:
  ksBaseLoftDefinitionDispT(){}

  ksBaseLoftDefinitionDispT(ksBaseLoftDefinition *pintf)
  {
    TAutoDriver<ksBaseLoftDefinition>::Bind(pintf, false);
  }

  ksBaseLoftDefinitionDispT(ksBaseLoftDefinitionPtr pintf)
  {
    TAutoDriver<ksBaseLoftDefinition>::Bind(pintf, true);
  }

  ksBaseLoftDefinitionDispT& operator=(ksBaseLoftDefinition *pintf)
  {
    TAutoDriver<ksBaseLoftDefinition>::Bind(pintf, false);
    return *this;
  }

  ksBaseLoftDefinitionDispT& operator=(ksBaseLoftDefinitionPtr pintf)
  {
    TAutoDriver<ksBaseLoftDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_BaseLoftDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_BaseLoftDefinition);
  }

  TOLEBOOL        __fastcall GetLoftParam(TOLEBOOL* closed, TOLEBOOL* flipVertex, TOLEBOOL* autoPath);
  TOLEBOOL        __fastcall SetLoftParam(TOLEBOOL closed, TOLEBOOL flipVertex, TOLEBOOL autoPath);
  TOLEBOOL        __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                          double* reverseTthickness);
  TOLEBOOL        __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                          double normalThickness/*[def,opt]*/, 
                                          double reverseThickness/*[def,opt]*/);
  LPDISPATCH      __fastcall ThinParam();
  LPDISPATCH      __fastcall Sketchs();

};
typedef ksBaseLoftDefinitionDispT<ksBaseLoftDefinition> ksBaseLoftDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksBossLoftDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFED-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksBossLoftDefinitionDispT : public TAutoDriver<ksBossLoftDefinition>
{
public:
  ksBossLoftDefinitionDispT(){}

  ksBossLoftDefinitionDispT(ksBossLoftDefinition *pintf)
  {
    TAutoDriver<ksBossLoftDefinition>::Bind(pintf, false);
  }

  ksBossLoftDefinitionDispT(ksBossLoftDefinitionPtr pintf)
  {
    TAutoDriver<ksBossLoftDefinition>::Bind(pintf, true);
  }

  ksBossLoftDefinitionDispT& operator=(ksBossLoftDefinition *pintf)
  {
    TAutoDriver<ksBossLoftDefinition>::Bind(pintf, false);
    return *this;
  }

  ksBossLoftDefinitionDispT& operator=(ksBossLoftDefinitionPtr pintf)
  {
    TAutoDriver<ksBossLoftDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_BossLoftDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_BossLoftDefinition);
  }

  TOLEBOOL        __fastcall GetLoftParam(TOLEBOOL* closed, TOLEBOOL* flipVertex, TOLEBOOL* autoPath);
  TOLEBOOL        __fastcall SetLoftParam(TOLEBOOL closed, TOLEBOOL flipVertex, TOLEBOOL autoPath);
  TOLEBOOL        __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                          double* reverseTthickness);
  TOLEBOOL        __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                          double normalThickness/*[def,opt]*/, 
                                          double reverseThickness/*[def,opt]*/);
  LPDISPATCH      __fastcall ThinParam();
  LPDISPATCH      __fastcall Sketchs();
  LPDISPATCH      __fastcall ChooseBodies();
  LPDISPATCH      __fastcall GetDirectionalLine();
  TOLEBOOL        __fastcall SetDirectionalLine(LPDISPATCH sketch);

};
typedef ksBossLoftDefinitionDispT<ksBossLoftDefinition> ksBossLoftDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksCutLoftDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFF0-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksCutLoftDefinitionDispT : public TAutoDriver<ksCutLoftDefinition>
{
public:
  ksCutLoftDefinitionDispT(){}

  ksCutLoftDefinitionDispT(ksCutLoftDefinition *pintf)
  {
    TAutoDriver<ksCutLoftDefinition>::Bind(pintf, false);
  }

  ksCutLoftDefinitionDispT(ksCutLoftDefinitionPtr pintf)
  {
    TAutoDriver<ksCutLoftDefinition>::Bind(pintf, true);
  }

  ksCutLoftDefinitionDispT& operator=(ksCutLoftDefinition *pintf)
  {
    TAutoDriver<ksCutLoftDefinition>::Bind(pintf, false);
    return *this;
  }

  ksCutLoftDefinitionDispT& operator=(ksCutLoftDefinitionPtr pintf)
  {
    TAutoDriver<ksCutLoftDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_CutLoftDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_CutLoftDefinition);
  }

  void            __fastcall set_cut(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_cut();
  void            __fastcall set_chooseType(long Value);
  long            __fastcall get_chooseType();
  TOLEBOOL        __fastcall GetLoftParam(TOLEBOOL* closed, TOLEBOOL* flipVertex, TOLEBOOL* autoPath);
  TOLEBOOL        __fastcall SetLoftParam(TOLEBOOL closed, TOLEBOOL flipVertex, TOLEBOOL autoPath);
  TOLEBOOL        __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                          double* reverseTthickness);
  TOLEBOOL        __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                          double normalThickness/*[def,opt]*/, 
                                          double reverseThickness/*[def,opt]*/);
  LPDISPATCH      __fastcall ThinParam();
  LPDISPATCH      __fastcall Sketchs();
  LPDISPATCH      __fastcall ChooseBodies();
  LPDISPATCH      __fastcall GetDirectionalLine();
  TOLEBOOL        __fastcall SetDirectionalLine(LPDISPATCH sketch);
  LPDISPATCH      __fastcall ChooseParts();

  __property   TOLEBOOL        cut = {read = get_cut, write = set_cut};
  __property   long            chooseType = {read = get_chooseType, write = set_chooseType};
};
typedef ksCutLoftDefinitionDispT<ksCutLoftDefinition> ksCutLoftDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksLoftSurfaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {E04339B5-AA08-4717-8E50-90ED0E375624}
// *********************************************************************//
template<class T>
class ksLoftSurfaceDefinitionDispT : public TAutoDriver<ksLoftSurfaceDefinition>
{
public:
  ksLoftSurfaceDefinitionDispT(){}

  ksLoftSurfaceDefinitionDispT(ksLoftSurfaceDefinition *pintf)
  {
    TAutoDriver<ksLoftSurfaceDefinition>::Bind(pintf, false);
  }

  ksLoftSurfaceDefinitionDispT(ksLoftSurfaceDefinitionPtr pintf)
  {
    TAutoDriver<ksLoftSurfaceDefinition>::Bind(pintf, true);
  }

  ksLoftSurfaceDefinitionDispT& operator=(ksLoftSurfaceDefinition *pintf)
  {
    TAutoDriver<ksLoftSurfaceDefinition>::Bind(pintf, false);
    return *this;
  }

  ksLoftSurfaceDefinitionDispT& operator=(ksLoftSurfaceDefinitionPtr pintf)
  {
    TAutoDriver<ksLoftSurfaceDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_LoftSurfaceDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_LoftSurfaceDefinition);
  }

  void            __fastcall set_closedShell(short Value);
  short           __fastcall get_closedShell();
  TOLEBOOL        __fastcall GetLoftParam(TOLEBOOL* closed, TOLEBOOL* flipVertex, TOLEBOOL* autoPath);
  TOLEBOOL        __fastcall SetLoftParam(TOLEBOOL closed, TOLEBOOL flipVertex, TOLEBOOL autoPath);
  LPDISPATCH      __fastcall Sketchs();

  __property   short           closedShell = {read = get_closedShell, write = set_closedShell};
};
typedef ksLoftSurfaceDefinitionDispT<ksLoftSurfaceDefinition> ksLoftSurfaceDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksInclineDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFF3-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksInclineDefinitionDispT : public TAutoDriver<ksInclineDefinition>
{
public:
  ksInclineDefinitionDispT(){}

  ksInclineDefinitionDispT(ksInclineDefinition *pintf)
  {
    TAutoDriver<ksInclineDefinition>::Bind(pintf, false);
  }

  ksInclineDefinitionDispT(ksInclineDefinitionPtr pintf)
  {
    TAutoDriver<ksInclineDefinition>::Bind(pintf, true);
  }

  ksInclineDefinitionDispT& operator=(ksInclineDefinition *pintf)
  {
    TAutoDriver<ksInclineDefinition>::Bind(pintf, false);
    return *this;
  }

  ksInclineDefinitionDispT& operator=(ksInclineDefinitionPtr pintf)
  {
    TAutoDriver<ksInclineDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_InclineDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_InclineDefinition);
  }

  void            __fastcall set_angle(double Value);
  double          __fastcall get_angle();
  void            __fastcall set_direction(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_direction();
  LPDISPATCH      __fastcall FaceArray();
  LPDISPATCH      __fastcall GetPlane();
  TOLEBOOL        __fastcall SetPlane(LPDISPATCH plane);

  __property   double          angle = {read = get_angle, write = set_angle};
  __property   TOLEBOOL        direction = {read = get_direction, write = set_direction};
};
typedef ksInclineDefinitionDispT<ksInclineDefinition> ksInclineDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksShellDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFF6-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksShellDefinitionDispT : public TAutoDriver<ksShellDefinition>
{
public:
  ksShellDefinitionDispT(){}

  ksShellDefinitionDispT(ksShellDefinition *pintf)
  {
    TAutoDriver<ksShellDefinition>::Bind(pintf, false);
  }

  ksShellDefinitionDispT(ksShellDefinitionPtr pintf)
  {
    TAutoDriver<ksShellDefinition>::Bind(pintf, true);
  }

  ksShellDefinitionDispT& operator=(ksShellDefinition *pintf)
  {
    TAutoDriver<ksShellDefinition>::Bind(pintf, false);
    return *this;
  }

  ksShellDefinitionDispT& operator=(ksShellDefinitionPtr pintf)
  {
    TAutoDriver<ksShellDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ShellDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ShellDefinition);
  }

  void            __fastcall set_thickness(double Value);
  double          __fastcall get_thickness();
  void            __fastcall set_thinType(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_thinType();
  LPDISPATCH      __fastcall FaceArray();

  __property   double          thickness = {read = get_thickness, write = set_thickness};
  __property   TOLEBOOL        thinType = {read = get_thinType, write = set_thinType};
};
typedef ksShellDefinitionDispT<ksShellDefinition> ksShellDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksBaseEvolutionDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFF9-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksBaseEvolutionDefinitionDispT : public TAutoDriver<ksBaseEvolutionDefinition>
{
public:
  ksBaseEvolutionDefinitionDispT(){}

  ksBaseEvolutionDefinitionDispT(ksBaseEvolutionDefinition *pintf)
  {
    TAutoDriver<ksBaseEvolutionDefinition>::Bind(pintf, false);
  }

  ksBaseEvolutionDefinitionDispT(ksBaseEvolutionDefinitionPtr pintf)
  {
    TAutoDriver<ksBaseEvolutionDefinition>::Bind(pintf, true);
  }

  ksBaseEvolutionDefinitionDispT& operator=(ksBaseEvolutionDefinition *pintf)
  {
    TAutoDriver<ksBaseEvolutionDefinition>::Bind(pintf, false);
    return *this;
  }

  ksBaseEvolutionDefinitionDispT& operator=(ksBaseEvolutionDefinitionPtr pintf)
  {
    TAutoDriver<ksBaseEvolutionDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_BaseEvolutionDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_BaseEvolutionDefinition);
  }

  void            __fastcall set_sketchShiftType(short Value);
  short           __fastcall get_sketchShiftType();
  TOLEBOOL        __fastcall SetSketch(LPDISPATCH sketch);
  LPDISPATCH      __fastcall GetSketch();
  LPDISPATCH      __fastcall PathPartArray();
  TOLEBOOL        __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                          double* reverseTthickness);
  TOLEBOOL        __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                          double normalThickness/*[def,opt]*/, 
                                          double reverseThickness/*[def,opt]*/);
  LPDISPATCH      __fastcall ThinParam();
  double          __fastcall GetPathLength(unsigned_long bitVector);

  __property   short           sketchShiftType = {read = get_sketchShiftType, write = set_sketchShiftType};
};
typedef ksBaseEvolutionDefinitionDispT<ksBaseEvolutionDefinition> ksBaseEvolutionDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksBossEvolutionDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFFC-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksBossEvolutionDefinitionDispT : public TAutoDriver<ksBossEvolutionDefinition>
{
public:
  ksBossEvolutionDefinitionDispT(){}

  ksBossEvolutionDefinitionDispT(ksBossEvolutionDefinition *pintf)
  {
    TAutoDriver<ksBossEvolutionDefinition>::Bind(pintf, false);
  }

  ksBossEvolutionDefinitionDispT(ksBossEvolutionDefinitionPtr pintf)
  {
    TAutoDriver<ksBossEvolutionDefinition>::Bind(pintf, true);
  }

  ksBossEvolutionDefinitionDispT& operator=(ksBossEvolutionDefinition *pintf)
  {
    TAutoDriver<ksBossEvolutionDefinition>::Bind(pintf, false);
    return *this;
  }

  ksBossEvolutionDefinitionDispT& operator=(ksBossEvolutionDefinitionPtr pintf)
  {
    TAutoDriver<ksBossEvolutionDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_BossEvolutionDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_BossEvolutionDefinition);
  }

  void            __fastcall set_sketchShiftType(short Value);
  short           __fastcall get_sketchShiftType();
  TOLEBOOL        __fastcall SetSketch(LPDISPATCH sketch);
  LPDISPATCH      __fastcall GetSketch();
  LPDISPATCH      __fastcall PathPartArray();
  TOLEBOOL        __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                          double* reverseTthickness);
  TOLEBOOL        __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                          double normalThickness/*[def,opt]*/, 
                                          double reverseThickness/*[def,opt]*/);
  LPDISPATCH      __fastcall ThinParam();
  LPDISPATCH      __fastcall ChooseBodies();
  double          __fastcall GetPathLength(unsigned_long bitVector);

  __property   short           sketchShiftType = {read = get_sketchShiftType, write = set_sketchShiftType};
};
typedef ksBossEvolutionDefinitionDispT<ksBossEvolutionDefinition> ksBossEvolutionDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksCutEvolutionDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFFF-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksCutEvolutionDefinitionDispT : public TAutoDriver<ksCutEvolutionDefinition>
{
public:
  ksCutEvolutionDefinitionDispT(){}

  ksCutEvolutionDefinitionDispT(ksCutEvolutionDefinition *pintf)
  {
    TAutoDriver<ksCutEvolutionDefinition>::Bind(pintf, false);
  }

  ksCutEvolutionDefinitionDispT(ksCutEvolutionDefinitionPtr pintf)
  {
    TAutoDriver<ksCutEvolutionDefinition>::Bind(pintf, true);
  }

  ksCutEvolutionDefinitionDispT& operator=(ksCutEvolutionDefinition *pintf)
  {
    TAutoDriver<ksCutEvolutionDefinition>::Bind(pintf, false);
    return *this;
  }

  ksCutEvolutionDefinitionDispT& operator=(ksCutEvolutionDefinitionPtr pintf)
  {
    TAutoDriver<ksCutEvolutionDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_CutEvolutionDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_CutEvolutionDefinition);
  }

  void            __fastcall set_sketchShiftType(short Value);
  short           __fastcall get_sketchShiftType();
  void            __fastcall set_cut(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_cut();
  void            __fastcall set_chooseType(long Value);
  long            __fastcall get_chooseType();
  TOLEBOOL        __fastcall SetSketch(LPDISPATCH sketch);
  LPDISPATCH      __fastcall GetSketch();
  LPDISPATCH      __fastcall PathPartArray();
  TOLEBOOL        __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                          double* reverseTthickness);
  TOLEBOOL        __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                          double normalThickness/*[def,opt]*/, 
                                          double reverseThickness/*[def,opt]*/);
  LPDISPATCH      __fastcall ThinParam();
  LPDISPATCH      __fastcall ChooseBodies();
  LPDISPATCH      __fastcall ChooseParts();
  double          __fastcall GetPathLength(unsigned_long bitVector);

  __property   short           sketchShiftType = {read = get_sketchShiftType, write = set_sketchShiftType};
  __property   TOLEBOOL        cut = {read = get_cut, write = set_cut};
  __property   long            chooseType = {read = get_chooseType, write = set_chooseType};
};
typedef ksCutEvolutionDefinitionDispT<ksCutEvolutionDefinition> ksCutEvolutionDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksEvolutionSurfaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {2BD4C79E-E2C3-42E8-8FCC-B51FFBDE9F69}
// *********************************************************************//
template<class T>
class ksEvolutionSurfaceDefinitionDispT : public TAutoDriver<ksEvolutionSurfaceDefinition>
{
public:
  ksEvolutionSurfaceDefinitionDispT(){}

  ksEvolutionSurfaceDefinitionDispT(ksEvolutionSurfaceDefinition *pintf)
  {
    TAutoDriver<ksEvolutionSurfaceDefinition>::Bind(pintf, false);
  }

  ksEvolutionSurfaceDefinitionDispT(ksEvolutionSurfaceDefinitionPtr pintf)
  {
    TAutoDriver<ksEvolutionSurfaceDefinition>::Bind(pintf, true);
  }

  ksEvolutionSurfaceDefinitionDispT& operator=(ksEvolutionSurfaceDefinition *pintf)
  {
    TAutoDriver<ksEvolutionSurfaceDefinition>::Bind(pintf, false);
    return *this;
  }

  ksEvolutionSurfaceDefinitionDispT& operator=(ksEvolutionSurfaceDefinitionPtr pintf)
  {
    TAutoDriver<ksEvolutionSurfaceDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_EvolutionSurfaceDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_EvolutionSurfaceDefinition);
  }

  void            __fastcall set_sketchShiftType(short Value);
  short           __fastcall get_sketchShiftType();
  void            __fastcall set_closedShell(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_closedShell();
  TOLEBOOL        __fastcall SetSketch(LPDISPATCH sketch);
  LPDISPATCH      __fastcall GetSketch();
  LPDISPATCH      __fastcall PathPartArray();
  double          __fastcall GetPathLength(unsigned_long bitVector);

  __property   short           sketchShiftType = {read = get_sketchShiftType, write = set_sketchShiftType};
  __property   TOLEBOOL        closedShell = {read = get_closedShell, write = set_closedShell};
};
typedef ksEvolutionSurfaceDefinitionDispT<ksEvolutionSurfaceDefinition> ksEvolutionSurfaceDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksRibDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF002-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksRibDefinitionDispT : public TAutoDriver<ksRibDefinition>
{
public:
  ksRibDefinitionDispT(){}

  ksRibDefinitionDispT(ksRibDefinition *pintf)
  {
    TAutoDriver<ksRibDefinition>::Bind(pintf, false);
  }

  ksRibDefinitionDispT(ksRibDefinitionPtr pintf)
  {
    TAutoDriver<ksRibDefinition>::Bind(pintf, true);
  }

  ksRibDefinitionDispT& operator=(ksRibDefinition *pintf)
  {
    TAutoDriver<ksRibDefinition>::Bind(pintf, false);
    return *this;
  }

  ksRibDefinitionDispT& operator=(ksRibDefinitionPtr pintf)
  {
    TAutoDriver<ksRibDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_RibDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_RibDefinition);
  }

  void            __fastcall set_index(long Value);
  long            __fastcall get_index();
  void            __fastcall set_angle(double Value);
  double          __fastcall get_angle();
  void            __fastcall set_side(long Value);
  long            __fastcall get_side();
  LPDISPATCH      __fastcall GetSketch();
  TOLEBOOL        __fastcall SetSketch(LPDISPATCH sketch);
  TOLEBOOL        __fastcall GetThinParam(short* thinType, double* normalThickness, 
                                          double* reverseTthickness);
  TOLEBOOL        __fastcall SetThinParam(short thinType/*[def,opt]*/, 
                                          double normalThickness/*[def,opt]*/, 
                                          double reverseThickness/*[def,opt]*/);
  LPDISPATCH      __fastcall ThinParam();

  __property   long            index = {read = get_index, write = set_index};
  __property   double          angle = {read = get_angle, write = set_angle};
  __property   long            side = {read = get_side, write = set_side};
};
typedef ksRibDefinitionDispT<ksRibDefinition> ksRibDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksCutByPlaneDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF005-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksCutByPlaneDefinitionDispT : public TAutoDriver<ksCutByPlaneDefinition>
{
public:
  ksCutByPlaneDefinitionDispT(){}

  ksCutByPlaneDefinitionDispT(ksCutByPlaneDefinition *pintf)
  {
    TAutoDriver<ksCutByPlaneDefinition>::Bind(pintf, false);
  }

  ksCutByPlaneDefinitionDispT(ksCutByPlaneDefinitionPtr pintf)
  {
    TAutoDriver<ksCutByPlaneDefinition>::Bind(pintf, true);
  }

  ksCutByPlaneDefinitionDispT& operator=(ksCutByPlaneDefinition *pintf)
  {
    TAutoDriver<ksCutByPlaneDefinition>::Bind(pintf, false);
    return *this;
  }

  ksCutByPlaneDefinitionDispT& operator=(ksCutByPlaneDefinitionPtr pintf)
  {
    TAutoDriver<ksCutByPlaneDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_CutByPlaneDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_CutByPlaneDefinition);
  }

  void            __fastcall set_direction(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_direction();
  void            __fastcall set_chooseType(long Value);
  long            __fastcall get_chooseType();
  LPDISPATCH      __fastcall GetPlane();
  TOLEBOOL        __fastcall SetPlane(LPDISPATCH plane);
  LPDISPATCH      __fastcall ChooseBodies();
  LPDISPATCH      __fastcall ChooseParts();

  __property   TOLEBOOL        direction = {read = get_direction, write = set_direction};
  __property   long            chooseType = {read = get_chooseType, write = set_chooseType};
};
typedef ksCutByPlaneDefinitionDispT<ksCutByPlaneDefinition> ksCutByPlaneDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksCutBySketchDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF008-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksCutBySketchDefinitionDispT : public TAutoDriver<ksCutBySketchDefinition>
{
public:
  ksCutBySketchDefinitionDispT(){}

  ksCutBySketchDefinitionDispT(ksCutBySketchDefinition *pintf)
  {
    TAutoDriver<ksCutBySketchDefinition>::Bind(pintf, false);
  }

  ksCutBySketchDefinitionDispT(ksCutBySketchDefinitionPtr pintf)
  {
    TAutoDriver<ksCutBySketchDefinition>::Bind(pintf, true);
  }

  ksCutBySketchDefinitionDispT& operator=(ksCutBySketchDefinition *pintf)
  {
    TAutoDriver<ksCutBySketchDefinition>::Bind(pintf, false);
    return *this;
  }

  ksCutBySketchDefinitionDispT& operator=(ksCutBySketchDefinitionPtr pintf)
  {
    TAutoDriver<ksCutBySketchDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_CutBySketchDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_CutBySketchDefinition);
  }

  void            __fastcall set_direction(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_direction();
  void            __fastcall set_chooseType(long Value);
  long            __fastcall get_chooseType();
  LPDISPATCH      __fastcall GetSketch();
  TOLEBOOL        __fastcall SetSketch(LPDISPATCH sketch);
  LPDISPATCH      __fastcall ChooseBodies();
  LPDISPATCH      __fastcall ChooseParts();

  __property   TOLEBOOL        direction = {read = get_direction, write = set_direction};
  __property   long            chooseType = {read = get_chooseType, write = set_chooseType};
};
typedef ksCutBySketchDefinitionDispT<ksCutBySketchDefinition> ksCutBySketchDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksPlaneOffsetDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF00B-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksPlaneOffsetDefinitionDispT : public TAutoDriver<ksPlaneOffsetDefinition>
{
public:
  ksPlaneOffsetDefinitionDispT(){}

  ksPlaneOffsetDefinitionDispT(ksPlaneOffsetDefinition *pintf)
  {
    TAutoDriver<ksPlaneOffsetDefinition>::Bind(pintf, false);
  }

  ksPlaneOffsetDefinitionDispT(ksPlaneOffsetDefinitionPtr pintf)
  {
    TAutoDriver<ksPlaneOffsetDefinition>::Bind(pintf, true);
  }

  ksPlaneOffsetDefinitionDispT& operator=(ksPlaneOffsetDefinition *pintf)
  {
    TAutoDriver<ksPlaneOffsetDefinition>::Bind(pintf, false);
    return *this;
  }

  ksPlaneOffsetDefinitionDispT& operator=(ksPlaneOffsetDefinitionPtr pintf)
  {
    TAutoDriver<ksPlaneOffsetDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_PlaneOffsetDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_PlaneOffsetDefinition);
  }

  void            __fastcall set_offset(double Value);
  double          __fastcall get_offset();
  void            __fastcall set_direction(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_direction();
  TOLEBOOL        __fastcall SetPlane(LPDISPATCH plane);
  LPDISPATCH      __fastcall GetPlane();
  LPDISPATCH      __fastcall GetSurface();

  __property   double          offset = {read = get_offset, write = set_offset};
  __property   TOLEBOOL        direction = {read = get_direction, write = set_direction};
};
typedef ksPlaneOffsetDefinitionDispT<ksPlaneOffsetDefinition> ksPlaneOffsetDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksPlaneAngleDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF00E-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksPlaneAngleDefinitionDispT : public TAutoDriver<ksPlaneAngleDefinition>
{
public:
  ksPlaneAngleDefinitionDispT(){}

  ksPlaneAngleDefinitionDispT(ksPlaneAngleDefinition *pintf)
  {
    TAutoDriver<ksPlaneAngleDefinition>::Bind(pintf, false);
  }

  ksPlaneAngleDefinitionDispT(ksPlaneAngleDefinitionPtr pintf)
  {
    TAutoDriver<ksPlaneAngleDefinition>::Bind(pintf, true);
  }

  ksPlaneAngleDefinitionDispT& operator=(ksPlaneAngleDefinition *pintf)
  {
    TAutoDriver<ksPlaneAngleDefinition>::Bind(pintf, false);
    return *this;
  }

  ksPlaneAngleDefinitionDispT& operator=(ksPlaneAngleDefinitionPtr pintf)
  {
    TAutoDriver<ksPlaneAngleDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_PlaneAngleDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_PlaneAngleDefinition);
  }

  void            __fastcall set_angle(double Value);
  double          __fastcall get_angle();
  TOLEBOOL        __fastcall SetPlane(LPDISPATCH plane);
  LPDISPATCH      __fastcall GetPlane();
  TOLEBOOL        __fastcall SetAxis(LPDISPATCH axis);
  LPDISPATCH      __fastcall GetAxis();
  LPDISPATCH      __fastcall GetSurface();

  __property   double          angle = {read = get_angle, write = set_angle};
};
typedef ksPlaneAngleDefinitionDispT<ksPlaneAngleDefinition> ksPlaneAngleDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksPlane3PointsDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF011-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksPlane3PointsDefinitionDispT : public TAutoDriver<ksPlane3PointsDefinition>
{
public:
  ksPlane3PointsDefinitionDispT(){}

  ksPlane3PointsDefinitionDispT(ksPlane3PointsDefinition *pintf)
  {
    TAutoDriver<ksPlane3PointsDefinition>::Bind(pintf, false);
  }

  ksPlane3PointsDefinitionDispT(ksPlane3PointsDefinitionPtr pintf)
  {
    TAutoDriver<ksPlane3PointsDefinition>::Bind(pintf, true);
  }

  ksPlane3PointsDefinitionDispT& operator=(ksPlane3PointsDefinition *pintf)
  {
    TAutoDriver<ksPlane3PointsDefinition>::Bind(pintf, false);
    return *this;
  }

  ksPlane3PointsDefinitionDispT& operator=(ksPlane3PointsDefinitionPtr pintf)
  {
    TAutoDriver<ksPlane3PointsDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Plane3PointsDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Plane3PointsDefinition);
  }

  TOLEBOOL        __fastcall SetPoint(long number, LPDISPATCH point);
  LPDISPATCH      __fastcall GetPoint(long number);
  LPDISPATCH      __fastcall GetSurface();

};
typedef ksPlane3PointsDefinitionDispT<ksPlane3PointsDefinition> ksPlane3PointsDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksPlaneNormalToSurfaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF014-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksPlaneNormalToSurfaceDefinitionDispT : public TAutoDriver<ksPlaneNormalToSurfaceDefinition>
{
public:
  ksPlaneNormalToSurfaceDefinitionDispT(){}

  ksPlaneNormalToSurfaceDefinitionDispT(ksPlaneNormalToSurfaceDefinition *pintf)
  {
    TAutoDriver<ksPlaneNormalToSurfaceDefinition>::Bind(pintf, false);
  }

  ksPlaneNormalToSurfaceDefinitionDispT(ksPlaneNormalToSurfaceDefinitionPtr pintf)
  {
    TAutoDriver<ksPlaneNormalToSurfaceDefinition>::Bind(pintf, true);
  }

  ksPlaneNormalToSurfaceDefinitionDispT& operator=(ksPlaneNormalToSurfaceDefinition *pintf)
  {
    TAutoDriver<ksPlaneNormalToSurfaceDefinition>::Bind(pintf, false);
    return *this;
  }

  ksPlaneNormalToSurfaceDefinitionDispT& operator=(ksPlaneNormalToSurfaceDefinitionPtr pintf)
  {
    TAutoDriver<ksPlaneNormalToSurfaceDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_PlaneNormalToSurfaceDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_PlaneNormalToSurfaceDefinition);
  }

  void            __fastcall set_angle(double Value);
  double          __fastcall get_angle();
  TOLEBOOL        __fastcall SetFace(LPDISPATCH face);
  LPDISPATCH      __fastcall GetFace();
  TOLEBOOL        __fastcall SetPlane(LPDISPATCH plane);
  LPDISPATCH      __fastcall GetPlane();
  LPDISPATCH      __fastcall GetSurface();

  __property   double          angle = {read = get_angle, write = set_angle};
};
typedef ksPlaneNormalToSurfaceDefinitionDispT<ksPlaneNormalToSurfaceDefinition> ksPlaneNormalToSurfaceDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksPlaneTangentToSurfaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF017-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksPlaneTangentToSurfaceDefinitionDispT : public TAutoDriver<ksPlaneTangentToSurfaceDefinition>
{
public:
  ksPlaneTangentToSurfaceDefinitionDispT(){}

  ksPlaneTangentToSurfaceDefinitionDispT(ksPlaneTangentToSurfaceDefinition *pintf)
  {
    TAutoDriver<ksPlaneTangentToSurfaceDefinition>::Bind(pintf, false);
  }

  ksPlaneTangentToSurfaceDefinitionDispT(ksPlaneTangentToSurfaceDefinitionPtr pintf)
  {
    TAutoDriver<ksPlaneTangentToSurfaceDefinition>::Bind(pintf, true);
  }

  ksPlaneTangentToSurfaceDefinitionDispT& operator=(ksPlaneTangentToSurfaceDefinition *pintf)
  {
    TAutoDriver<ksPlaneTangentToSurfaceDefinition>::Bind(pintf, false);
    return *this;
  }

  ksPlaneTangentToSurfaceDefinitionDispT& operator=(ksPlaneTangentToSurfaceDefinitionPtr pintf)
  {
    TAutoDriver<ksPlaneTangentToSurfaceDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_PlaneTangentToSurfaceDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_PlaneTangentToSurfaceDefinition);
  }

  void            __fastcall set_choosePlane(short Value);
  short           __fastcall get_choosePlane();
  void            __fastcall set_angle(double Value);
  double          __fastcall get_angle();
  TOLEBOOL        __fastcall SetFace(LPDISPATCH face);
  LPDISPATCH      __fastcall GetFace();
  TOLEBOOL        __fastcall SetPlane(LPDISPATCH plane);
  LPDISPATCH      __fastcall GetPlane();
  LPDISPATCH      __fastcall GetSurface();

  __property   short           choosePlane = {read = get_choosePlane, write = set_choosePlane};
  __property   double          angle = {read = get_angle, write = set_angle};
};
typedef ksPlaneTangentToSurfaceDefinitionDispT<ksPlaneTangentToSurfaceDefinition> ksPlaneTangentToSurfaceDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksPlaneEdgePointDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF01A-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksPlaneEdgePointDefinitionDispT : public TAutoDriver<ksPlaneEdgePointDefinition>
{
public:
  ksPlaneEdgePointDefinitionDispT(){}

  ksPlaneEdgePointDefinitionDispT(ksPlaneEdgePointDefinition *pintf)
  {
    TAutoDriver<ksPlaneEdgePointDefinition>::Bind(pintf, false);
  }

  ksPlaneEdgePointDefinitionDispT(ksPlaneEdgePointDefinitionPtr pintf)
  {
    TAutoDriver<ksPlaneEdgePointDefinition>::Bind(pintf, true);
  }

  ksPlaneEdgePointDefinitionDispT& operator=(ksPlaneEdgePointDefinition *pintf)
  {
    TAutoDriver<ksPlaneEdgePointDefinition>::Bind(pintf, false);
    return *this;
  }

  ksPlaneEdgePointDefinitionDispT& operator=(ksPlaneEdgePointDefinitionPtr pintf)
  {
    TAutoDriver<ksPlaneEdgePointDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_PlaneEdgePointDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_PlaneEdgePointDefinition);
  }

  TOLEBOOL        __fastcall SetEdge(LPDISPATCH edge);
  LPDISPATCH      __fastcall GetEdge();
  TOLEBOOL        __fastcall SetPoint(LPDISPATCH point);
  LPDISPATCH      __fastcall GetPoint();
  LPDISPATCH      __fastcall GetSurface();

};
typedef ksPlaneEdgePointDefinitionDispT<ksPlaneEdgePointDefinition> ksPlaneEdgePointDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksPlaneParallelDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF01D-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksPlaneParallelDefinitionDispT : public TAutoDriver<ksPlaneParallelDefinition>
{
public:
  ksPlaneParallelDefinitionDispT(){}

  ksPlaneParallelDefinitionDispT(ksPlaneParallelDefinition *pintf)
  {
    TAutoDriver<ksPlaneParallelDefinition>::Bind(pintf, false);
  }

  ksPlaneParallelDefinitionDispT(ksPlaneParallelDefinitionPtr pintf)
  {
    TAutoDriver<ksPlaneParallelDefinition>::Bind(pintf, true);
  }

  ksPlaneParallelDefinitionDispT& operator=(ksPlaneParallelDefinition *pintf)
  {
    TAutoDriver<ksPlaneParallelDefinition>::Bind(pintf, false);
    return *this;
  }

  ksPlaneParallelDefinitionDispT& operator=(ksPlaneParallelDefinitionPtr pintf)
  {
    TAutoDriver<ksPlaneParallelDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_PlaneParallelDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_PlaneParallelDefinition);
  }

  TOLEBOOL        __fastcall SetPlane(LPDISPATCH plane);
  LPDISPATCH      __fastcall GetPlane();
  TOLEBOOL        __fastcall SetPoint(LPDISPATCH point);
  LPDISPATCH      __fastcall GetPoint();
  LPDISPATCH      __fastcall GetSurface();

};
typedef ksPlaneParallelDefinitionDispT<ksPlaneParallelDefinition> ksPlaneParallelDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksPlanePerpendicularDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF020-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksPlanePerpendicularDefinitionDispT : public TAutoDriver<ksPlanePerpendicularDefinition>
{
public:
  ksPlanePerpendicularDefinitionDispT(){}

  ksPlanePerpendicularDefinitionDispT(ksPlanePerpendicularDefinition *pintf)
  {
    TAutoDriver<ksPlanePerpendicularDefinition>::Bind(pintf, false);
  }

  ksPlanePerpendicularDefinitionDispT(ksPlanePerpendicularDefinitionPtr pintf)
  {
    TAutoDriver<ksPlanePerpendicularDefinition>::Bind(pintf, true);
  }

  ksPlanePerpendicularDefinitionDispT& operator=(ksPlanePerpendicularDefinition *pintf)
  {
    TAutoDriver<ksPlanePerpendicularDefinition>::Bind(pintf, false);
    return *this;
  }

  ksPlanePerpendicularDefinitionDispT& operator=(ksPlanePerpendicularDefinitionPtr pintf)
  {
    TAutoDriver<ksPlanePerpendicularDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_PlanePerpendicularDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_PlanePerpendicularDefinition);
  }

  TOLEBOOL        __fastcall SetEdge(LPDISPATCH edge);
  LPDISPATCH      __fastcall GetEdge();
  TOLEBOOL        __fastcall SetPoint(LPDISPATCH point);
  LPDISPATCH      __fastcall GetPoint();
  LPDISPATCH      __fastcall GetSurface();

};
typedef ksPlanePerpendicularDefinitionDispT<ksPlanePerpendicularDefinition> ksPlanePerpendicularDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksPlaneLineToEdgeDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF023-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksPlaneLineToEdgeDefinitionDispT : public TAutoDriver<ksPlaneLineToEdgeDefinition>
{
public:
  ksPlaneLineToEdgeDefinitionDispT(){}

  ksPlaneLineToEdgeDefinitionDispT(ksPlaneLineToEdgeDefinition *pintf)
  {
    TAutoDriver<ksPlaneLineToEdgeDefinition>::Bind(pintf, false);
  }

  ksPlaneLineToEdgeDefinitionDispT(ksPlaneLineToEdgeDefinitionPtr pintf)
  {
    TAutoDriver<ksPlaneLineToEdgeDefinition>::Bind(pintf, true);
  }

  ksPlaneLineToEdgeDefinitionDispT& operator=(ksPlaneLineToEdgeDefinition *pintf)
  {
    TAutoDriver<ksPlaneLineToEdgeDefinition>::Bind(pintf, false);
    return *this;
  }

  ksPlaneLineToEdgeDefinitionDispT& operator=(ksPlaneLineToEdgeDefinitionPtr pintf)
  {
    TAutoDriver<ksPlaneLineToEdgeDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_PlaneLineToEdgeDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_PlaneLineToEdgeDefinition);
  }

  void            __fastcall set_parallel(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_parallel();
  TOLEBOOL        __fastcall SetEdgeFirst(LPDISPATCH edge1);
  LPDISPATCH      __fastcall GetEdgeFirst();
  TOLEBOOL        __fastcall SetEdgeSecond(LPDISPATCH edge2);
  LPDISPATCH      __fastcall GetEdgeSecond();
  LPDISPATCH      __fastcall GetSurface();

  __property   TOLEBOOL        parallel = {read = get_parallel, write = set_parallel};
};
typedef ksPlaneLineToEdgeDefinitionDispT<ksPlaneLineToEdgeDefinition> ksPlaneLineToEdgeDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksPlaneLineToPlaneDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF026-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksPlaneLineToPlaneDefinitionDispT : public TAutoDriver<ksPlaneLineToPlaneDefinition>
{
public:
  ksPlaneLineToPlaneDefinitionDispT(){}

  ksPlaneLineToPlaneDefinitionDispT(ksPlaneLineToPlaneDefinition *pintf)
  {
    TAutoDriver<ksPlaneLineToPlaneDefinition>::Bind(pintf, false);
  }

  ksPlaneLineToPlaneDefinitionDispT(ksPlaneLineToPlaneDefinitionPtr pintf)
  {
    TAutoDriver<ksPlaneLineToPlaneDefinition>::Bind(pintf, true);
  }

  ksPlaneLineToPlaneDefinitionDispT& operator=(ksPlaneLineToPlaneDefinition *pintf)
  {
    TAutoDriver<ksPlaneLineToPlaneDefinition>::Bind(pintf, false);
    return *this;
  }

  ksPlaneLineToPlaneDefinitionDispT& operator=(ksPlaneLineToPlaneDefinitionPtr pintf)
  {
    TAutoDriver<ksPlaneLineToPlaneDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_PlaneLineToPlaneDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_PlaneLineToPlaneDefinition);
  }

  void            __fastcall set_parallel(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_parallel();
  TOLEBOOL        __fastcall SetEdge(LPDISPATCH edge);
  LPDISPATCH      __fastcall GetEdge();
  TOLEBOOL        __fastcall SetPlane(LPDISPATCH plane);
  LPDISPATCH      __fastcall GetPlane();
  LPDISPATCH      __fastcall GetSurface();

  __property   TOLEBOOL        parallel = {read = get_parallel, write = set_parallel};
};
typedef ksPlaneLineToPlaneDefinitionDispT<ksPlaneLineToPlaneDefinition> ksPlaneLineToPlaneDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksThinParam
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF029-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksThinParamDispT : public TAutoDriver<ksThinParam>
{
public:
  ksThinParamDispT(){}

  ksThinParamDispT(ksThinParam *pintf)
  {
    TAutoDriver<ksThinParam>::Bind(pintf, false);
  }

  ksThinParamDispT(ksThinParamPtr pintf)
  {
    TAutoDriver<ksThinParam>::Bind(pintf, true);
  }

  ksThinParamDispT& operator=(ksThinParam *pintf)
  {
    TAutoDriver<ksThinParam>::Bind(pintf, false);
    return *this;
  }

  ksThinParamDispT& operator=(ksThinParamPtr pintf)
  {
    TAutoDriver<ksThinParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ThinParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ThinParam);
  }

  void            __fastcall set_thin(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_thin();
  void            __fastcall set_thinType(short Value);
  short           __fastcall get_thinType();
  void            __fastcall set_normalThickness(double Value);
  double          __fastcall get_normalThickness();
  void            __fastcall set_reverseThickness(double Value);
  double          __fastcall get_reverseThickness();

  __property   TOLEBOOL        thin = {read = get_thin, write = set_thin};
  __property   short           thinType = {read = get_thinType, write = set_thinType};
  __property   double          normalThickness = {read = get_normalThickness, write = set_normalThickness};
  __property   double          reverseThickness = {read = get_reverseThickness, write = set_reverseThickness};
};
typedef ksThinParamDispT<ksThinParam> ksThinParamDisp;

// *********************************************************************//
// DispIntf:  ksExtrusionParam
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF02C-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksExtrusionParamDispT : public TAutoDriver<ksExtrusionParam>
{
public:
  ksExtrusionParamDispT(){}

  ksExtrusionParamDispT(ksExtrusionParam *pintf)
  {
    TAutoDriver<ksExtrusionParam>::Bind(pintf, false);
  }

  ksExtrusionParamDispT(ksExtrusionParamPtr pintf)
  {
    TAutoDriver<ksExtrusionParam>::Bind(pintf, true);
  }

  ksExtrusionParamDispT& operator=(ksExtrusionParam *pintf)
  {
    TAutoDriver<ksExtrusionParam>::Bind(pintf, false);
    return *this;
  }

  ksExtrusionParamDispT& operator=(ksExtrusionParamPtr pintf)
  {
    TAutoDriver<ksExtrusionParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ExtrusionParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ExtrusionParam);
  }

  void            __fastcall set_typeNormal(short Value);
  short           __fastcall get_typeNormal();
  void            __fastcall set_depthNormal(double Value);
  double          __fastcall get_depthNormal();
  void            __fastcall set_draftValueNormal(double Value);
  double          __fastcall get_draftValueNormal();
  void            __fastcall set_draftOutwardNormal(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_draftOutwardNormal();
  void            __fastcall set_typeReverse(short Value);
  short           __fastcall get_typeReverse();
  void            __fastcall set_depthReverse(double Value);
  double          __fastcall get_depthReverse();
  void            __fastcall set_draftValueReverse(double Value);
  double          __fastcall get_draftValueReverse();
  void            __fastcall set_draftOutwardReverse(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_draftOutwardReverse();
  void            __fastcall set_direction(long Value);
  long            __fastcall get_direction();

  __property   short           typeNormal = {read = get_typeNormal, write = set_typeNormal};
  __property   double          depthNormal = {read = get_depthNormal, write = set_depthNormal};
  __property   double          draftValueNormal = {read = get_draftValueNormal, write = set_draftValueNormal};
  __property   TOLEBOOL        draftOutwardNormal = {read = get_draftOutwardNormal, write = set_draftOutwardNormal};
  __property   short           typeReverse = {read = get_typeReverse, write = set_typeReverse};
  __property   double          depthReverse = {read = get_depthReverse, write = set_depthReverse};
  __property   double          draftValueReverse = {read = get_draftValueReverse, write = set_draftValueReverse};
  __property   TOLEBOOL        draftOutwardReverse = {read = get_draftOutwardReverse, write = set_draftOutwardReverse};
  __property   long            direction = {read = get_direction, write = set_direction};
};
typedef ksExtrusionParamDispT<ksExtrusionParam> ksExtrusionParamDisp;

// *********************************************************************//
// DispIntf:  ksRotatedParam
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF02F-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksRotatedParamDispT : public TAutoDriver<ksRotatedParam>
{
public:
  ksRotatedParamDispT(){}

  ksRotatedParamDispT(ksRotatedParam *pintf)
  {
    TAutoDriver<ksRotatedParam>::Bind(pintf, false);
  }

  ksRotatedParamDispT(ksRotatedParamPtr pintf)
  {
    TAutoDriver<ksRotatedParam>::Bind(pintf, true);
  }

  ksRotatedParamDispT& operator=(ksRotatedParam *pintf)
  {
    TAutoDriver<ksRotatedParam>::Bind(pintf, false);
    return *this;
  }

  ksRotatedParamDispT& operator=(ksRotatedParamPtr pintf)
  {
    TAutoDriver<ksRotatedParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_RotatedParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_RotatedParam);
  }

  void            __fastcall set_angleNormal(double Value);
  double          __fastcall get_angleNormal();
  void            __fastcall set_angleReverse(double Value);
  double          __fastcall get_angleReverse();
  void            __fastcall set_toroidShape(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_toroidShape();
  void            __fastcall set_direction(long Value);
  long            __fastcall get_direction();

  __property   double          angleNormal = {read = get_angleNormal, write = set_angleNormal};
  __property   double          angleReverse = {read = get_angleReverse, write = set_angleReverse};
  __property   TOLEBOOL        toroidShape = {read = get_toroidShape, write = set_toroidShape};
  __property   long            direction = {read = get_direction, write = set_direction};
};
typedef ksRotatedParamDispT<ksRotatedParam> ksRotatedParamDisp;

// *********************************************************************//
// DispIntf:  ksColorParam
// Flags:     (4096) Dispatchable
// GUID:      {2DFACC61-C4A4-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksColorParamDispT : public TAutoDriver<ksColorParam>
{
public:
  ksColorParamDispT(){}

  ksColorParamDispT(ksColorParam *pintf)
  {
    TAutoDriver<ksColorParam>::Bind(pintf, false);
  }

  ksColorParamDispT(ksColorParamPtr pintf)
  {
    TAutoDriver<ksColorParam>::Bind(pintf, true);
  }

  ksColorParamDispT& operator=(ksColorParam *pintf)
  {
    TAutoDriver<ksColorParam>::Bind(pintf, false);
    return *this;
  }

  ksColorParamDispT& operator=(ksColorParamPtr pintf)
  {
    TAutoDriver<ksColorParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ColorParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ColorParam);
  }

  void            __fastcall set_color(long Value);
  long            __fastcall get_color();
  void            __fastcall set_ambient(double Value);
  double          __fastcall get_ambient();
  void            __fastcall set_diffuse(double Value);
  double          __fastcall get_diffuse();
  void            __fastcall set_specularity(double Value);
  double          __fastcall get_specularity();
  void            __fastcall set_shininess(double Value);
  double          __fastcall get_shininess();
  void            __fastcall set_transparency(double Value);
  double          __fastcall get_transparency();
  void            __fastcall set_emission(double Value);
  double          __fastcall get_emission();
  TOLEBOOL        __fastcall Clear();

  __property   long            color = {read = get_color, write = set_color};
  __property   double          ambient = {read = get_ambient, write = set_ambient};
  __property   double          diffuse = {read = get_diffuse, write = set_diffuse};
  __property   double          specularity = {read = get_specularity, write = set_specularity};
  __property   double          shininess = {read = get_shininess, write = set_shininess};
  __property   double          transparency = {read = get_transparency, write = set_transparency};
  __property   double          emission = {read = get_emission, write = set_emission};
};
typedef ksColorParamDispT<ksColorParam> ksColorParamDisp;

// *********************************************************************//
// DispIntf:  ksBaseRotatedDefinition
// Flags:     (4096) Dispatchable
// GUID:      {2DFACC67-C4A4-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksBaseRotatedDefinitionDispT : public TAutoDriver<ksBaseRotatedDefinition>
{
public:
  ksBaseRotatedDefinitionDispT(){}

  ksBaseRotatedDefinitionDispT(ksBaseRotatedDefinition *pintf)
  {
    TAutoDriver<ksBaseRotatedDefinition>::Bind(pintf, false);
  }

  ksBaseRotatedDefinitionDispT(ksBaseRotatedDefinitionPtr pintf)
  {
    TAutoDriver<ksBaseRotatedDefinition>::Bind(pintf, true);
  }

  ksBaseRotatedDefinitionDispT& operator=(ksBaseRotatedDefinition *pintf)
  {
    TAutoDriver<ksBaseRotatedDefinition>::Bind(pintf, false);
    return *this;
  }

  ksBaseRotatedDefinitionDispT& operator=(ksBaseRotatedDefinitionPtr pintf)
  {
    TAutoDriver<ksBaseRotatedDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_BaseRotatedDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_BaseRotatedDefinition);
  }

  void            __fastcall set_directionType(short Value);
  short           __fastcall get_directionType();
  void            __fastcall set_toroidShapeType(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_toroidShapeType();
  TOLEBOOL        __fastcall SetSketch(LPDISPATCH sketch);
  LPDISPATCH      __fastcall GetSketch();
  TOLEBOOL        __fastcall GetSideParam(TOLEBOOL side1, double* angle);
  TOLEBOOL        __fastcall SetSideParam(TOLEBOOL side1/*[def,opt]*/, double angle/*[def,opt]*/);
  TOLEBOOL        __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                          double* reverseTthickness);
  TOLEBOOL        __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                          double normalThickness/*[def,opt]*/, 
                                          double reverseThickness/*[def,opt]*/);
  LPDISPATCH      __fastcall ThinParam();
  LPDISPATCH      __fastcall RotatedParam();

  __property   short           directionType = {read = get_directionType, write = set_directionType};
  __property   TOLEBOOL        toroidShapeType = {read = get_toroidShapeType, write = set_toroidShapeType};
};
typedef ksBaseRotatedDefinitionDispT<ksBaseRotatedDefinition> ksBaseRotatedDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksBossRotatedDefinition
// Flags:     (4096) Dispatchable
// GUID:      {2DFACC6A-C4A4-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksBossRotatedDefinitionDispT : public TAutoDriver<ksBossRotatedDefinition>
{
public:
  ksBossRotatedDefinitionDispT(){}

  ksBossRotatedDefinitionDispT(ksBossRotatedDefinition *pintf)
  {
    TAutoDriver<ksBossRotatedDefinition>::Bind(pintf, false);
  }

  ksBossRotatedDefinitionDispT(ksBossRotatedDefinitionPtr pintf)
  {
    TAutoDriver<ksBossRotatedDefinition>::Bind(pintf, true);
  }

  ksBossRotatedDefinitionDispT& operator=(ksBossRotatedDefinition *pintf)
  {
    TAutoDriver<ksBossRotatedDefinition>::Bind(pintf, false);
    return *this;
  }

  ksBossRotatedDefinitionDispT& operator=(ksBossRotatedDefinitionPtr pintf)
  {
    TAutoDriver<ksBossRotatedDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_BossRotatedDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_BossRotatedDefinition);
  }

  void            __fastcall set_directionType(short Value);
  short           __fastcall get_directionType();
  void            __fastcall set_toroidShapeType(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_toroidShapeType();
  TOLEBOOL        __fastcall SetSketch(LPDISPATCH sketch);
  LPDISPATCH      __fastcall GetSketch();
  TOLEBOOL        __fastcall GetSideParam(TOLEBOOL side1, double* angle);
  TOLEBOOL        __fastcall SetSideParam(TOLEBOOL side1/*[def,opt]*/, double angle/*[def,opt]*/);
  TOLEBOOL        __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                          double* reverseTthickness);
  TOLEBOOL        __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                          double normalThickness/*[def,opt]*/, 
                                          double reverseThickness/*[def,opt]*/);
  LPDISPATCH      __fastcall ThinParam();
  LPDISPATCH      __fastcall RotatedParam();
  LPDISPATCH      __fastcall ChooseBodies();

  __property   short           directionType = {read = get_directionType, write = set_directionType};
  __property   TOLEBOOL        toroidShapeType = {read = get_toroidShapeType, write = set_toroidShapeType};
};
typedef ksBossRotatedDefinitionDispT<ksBossRotatedDefinition> ksBossRotatedDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksCutRotatedDefinition
// Flags:     (4096) Dispatchable
// GUID:      {2DFACC6D-C4A4-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksCutRotatedDefinitionDispT : public TAutoDriver<ksCutRotatedDefinition>
{
public:
  ksCutRotatedDefinitionDispT(){}

  ksCutRotatedDefinitionDispT(ksCutRotatedDefinition *pintf)
  {
    TAutoDriver<ksCutRotatedDefinition>::Bind(pintf, false);
  }

  ksCutRotatedDefinitionDispT(ksCutRotatedDefinitionPtr pintf)
  {
    TAutoDriver<ksCutRotatedDefinition>::Bind(pintf, true);
  }

  ksCutRotatedDefinitionDispT& operator=(ksCutRotatedDefinition *pintf)
  {
    TAutoDriver<ksCutRotatedDefinition>::Bind(pintf, false);
    return *this;
  }

  ksCutRotatedDefinitionDispT& operator=(ksCutRotatedDefinitionPtr pintf)
  {
    TAutoDriver<ksCutRotatedDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_CutRotatedDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_CutRotatedDefinition);
  }

  void            __fastcall set_directionType(short Value);
  short           __fastcall get_directionType();
  void            __fastcall set_toroidShapeType(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_toroidShapeType();
  void            __fastcall set_cut(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_cut();
  void            __fastcall set_chooseType(long Value);
  long            __fastcall get_chooseType();
  TOLEBOOL        __fastcall SetSketch(LPDISPATCH sketch);
  LPDISPATCH      __fastcall GetSketch();
  TOLEBOOL        __fastcall GetSideParam(TOLEBOOL side1, double* angle);
  TOLEBOOL        __fastcall SetSideParam(TOLEBOOL side1/*[def,opt]*/, double angle/*[def,opt]*/);
  TOLEBOOL        __fastcall GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                          double* reverseTthickness);
  TOLEBOOL        __fastcall SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                          double normalThickness/*[def,opt]*/, 
                                          double reverseThickness/*[def,opt]*/);
  LPDISPATCH      __fastcall ThinParam();
  LPDISPATCH      __fastcall RotatedParam();
  LPDISPATCH      __fastcall ChooseBodies();
  LPDISPATCH      __fastcall ChooseParts();

  __property   short           directionType = {read = get_directionType, write = set_directionType};
  __property   TOLEBOOL        toroidShapeType = {read = get_toroidShapeType, write = set_toroidShapeType};
  __property   TOLEBOOL        cut = {read = get_cut, write = set_cut};
  __property   long            chooseType = {read = get_chooseType, write = set_chooseType};
};
typedef ksCutRotatedDefinitionDispT<ksCutRotatedDefinition> ksCutRotatedDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksRotatedSurfaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {FD27841D-1374-4F7F-AE8A-C2A44F89120D}
// *********************************************************************//
template<class T>
class ksRotatedSurfaceDefinitionDispT : public TAutoDriver<ksRotatedSurfaceDefinition>
{
public:
  ksRotatedSurfaceDefinitionDispT(){}

  ksRotatedSurfaceDefinitionDispT(ksRotatedSurfaceDefinition *pintf)
  {
    TAutoDriver<ksRotatedSurfaceDefinition>::Bind(pintf, false);
  }

  ksRotatedSurfaceDefinitionDispT(ksRotatedSurfaceDefinitionPtr pintf)
  {
    TAutoDriver<ksRotatedSurfaceDefinition>::Bind(pintf, true);
  }

  ksRotatedSurfaceDefinitionDispT& operator=(ksRotatedSurfaceDefinition *pintf)
  {
    TAutoDriver<ksRotatedSurfaceDefinition>::Bind(pintf, false);
    return *this;
  }

  ksRotatedSurfaceDefinitionDispT& operator=(ksRotatedSurfaceDefinitionPtr pintf)
  {
    TAutoDriver<ksRotatedSurfaceDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_RotatedSurfaceDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_RotatedSurfaceDefinition);
  }

  void            __fastcall set_directionType(short Value);
  short           __fastcall get_directionType();
  void            __fastcall set_toroidShapeType(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_toroidShapeType();
  void            __fastcall set_closedShell(short Value);
  short           __fastcall get_closedShell();
  TOLEBOOL        __fastcall SetSketch(LPDISPATCH sketch);
  LPDISPATCH      __fastcall GetSketch();
  TOLEBOOL        __fastcall GetSideParam(TOLEBOOL side1, double* angle);
  TOLEBOOL        __fastcall SetSideParam(TOLEBOOL side1/*[def,opt]*/, double angle/*[def,opt]*/);
  LPDISPATCH      __fastcall RotatedParam();

  __property   short           directionType = {read = get_directionType, write = set_directionType};
  __property   TOLEBOOL        toroidShapeType = {read = get_toroidShapeType, write = set_toroidShapeType};
  __property   short           closedShell = {read = get_closedShell, write = set_closedShell};
};
typedef ksRotatedSurfaceDefinitionDispT<ksRotatedSurfaceDefinition> ksRotatedSurfaceDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksSketchDefinition
// Flags:     (4096) Dispatchable
// GUID:      {2DFACC70-C4A4-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template<class T>
class ksSketchDefinitionDispT : public TAutoDriver<ksSketchDefinition>
{
public:
  ksSketchDefinitionDispT(){}

  ksSketchDefinitionDispT(ksSketchDefinition *pintf)
  {
    TAutoDriver<ksSketchDefinition>::Bind(pintf, false);
  }

  ksSketchDefinitionDispT(ksSketchDefinitionPtr pintf)
  {
    TAutoDriver<ksSketchDefinition>::Bind(pintf, true);
  }

  ksSketchDefinitionDispT& operator=(ksSketchDefinition *pintf)
  {
    TAutoDriver<ksSketchDefinition>::Bind(pintf, false);
    return *this;
  }

  ksSketchDefinitionDispT& operator=(ksSketchDefinitionPtr pintf)
  {
    TAutoDriver<ksSketchDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_SketchDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_SketchDefinition);
  }

  void            __fastcall set_angle(double Value);
  double          __fastcall get_angle();
  TOLEBOOL        __fastcall EndEdit();
  TOLEBOOL        __fastcall SetPlane(LPDISPATCH plane);
  LPDISPATCH      __fastcall GetPlane();
  TOLEBOOL        __fastcall GetLocation(double* x, double* y);
  TOLEBOOL        __fastcall SetLocation(double x/*[def,opt]*/, double y/*[def,opt]*/);
  TOLEBOOL        __fastcall GetLoftPoint(double* x, double* y);
  TOLEBOOL        __fastcall UserSetPlacement(BSTR prompt/*[def,opt]*/);
  LPDISPATCH      __fastcall BeginEdit();
  long            __fastcall AddProjectionOf(LPDISPATCH entity);
  TOLEBOOL        __fastcall SetLoftPoint(double x/*[def,opt]*/, double y/*[def,opt]*/);
  LPDISPATCH      __fastcall GetSurface();

  __property   double          angle = {read = get_angle, write = set_angle};
};
typedef ksSketchDefinitionDispT<ksSketchDefinition> ksSketchDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksRasterFormatParam
// Flags:     (4096) Dispatchable
// GUID:      {1A91A8AB-AF8C-4EE3-86D4-0A9C00123195}
// *********************************************************************//
template<class T>
class ksRasterFormatParamDispT : public TAutoDriver<ksRasterFormatParam>
{
public:
  ksRasterFormatParamDispT(){}

  ksRasterFormatParamDispT(ksRasterFormatParam *pintf)
  {
    TAutoDriver<ksRasterFormatParam>::Bind(pintf, false);
  }

  ksRasterFormatParamDispT(ksRasterFormatParamPtr pintf)
  {
    TAutoDriver<ksRasterFormatParam>::Bind(pintf, true);
  }

  ksRasterFormatParamDispT& operator=(ksRasterFormatParam *pintf)
  {
    TAutoDriver<ksRasterFormatParam>::Bind(pintf, false);
    return *this;
  }

  ksRasterFormatParamDispT& operator=(ksRasterFormatParamPtr pintf)
  {
    TAutoDriver<ksRasterFormatParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_RasterFormatParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_RasterFormatParam);
  }

  void            __fastcall set_format(short Value);
  short           __fastcall get_format();
  void            __fastcall set_colorBPP(short Value);
  short           __fastcall get_colorBPP();
  void            __fastcall set_greyScale(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_greyScale();
  void            __fastcall set_extResolution(long Value);
  long            __fastcall get_extResolution();
  void            __fastcall set_extScale(double Value);
  double          __fastcall get_extScale();
  void            __fastcall set_colorType(short Value);
  short           __fastcall get_colorType();
  void            __fastcall set_onlyThinLine(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_onlyThinLine();
  void            __fastcall set_pages(BSTR Value);
  BSTR            __fastcall get_pages();
  void            __fastcall set_rangeIndex(short Value);
  short           __fastcall get_rangeIndex();
  void            __fastcall set_multiPageOutput(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_multiPageOutput();
  TOLEBOOL        __fastcall Init();

  __property   short           format = {read = get_format, write = set_format};
  __property   short           colorBPP = {read = get_colorBPP, write = set_colorBPP};
  __property   TOLEBOOL        greyScale = {read = get_greyScale, write = set_greyScale};
  __property   long            extResolution = {read = get_extResolution, write = set_extResolution};
  __property   double          extScale = {read = get_extScale, write = set_extScale};
  __property   short           colorType = {read = get_colorType, write = set_colorType};
  __property   TOLEBOOL        onlyThinLine = {read = get_onlyThinLine, write = set_onlyThinLine};
  __property   BSTR            pages = {read = get_pages, write = set_pages};
  __property   short           rangeIndex = {read = get_rangeIndex, write = set_rangeIndex};
  __property   TOLEBOOL        multiPageOutput = {read = get_multiPageOutput, write = set_multiPageOutput};
};
typedef ksRasterFormatParamDispT<ksRasterFormatParam> ksRasterFormatParamDisp;

// *********************************************************************//
// DispIntf:  ksAdditionFormatParam
// Flags:     (4096) Dispatchable
// GUID:      {0FD25FF9-AB0A-48F3-BAD4-F193116C0887}
// *********************************************************************//
template<class T>
class ksAdditionFormatParamDispT : public TAutoDriver<ksAdditionFormatParam>
{
public:
  ksAdditionFormatParamDispT(){}

  ksAdditionFormatParamDispT(ksAdditionFormatParam *pintf)
  {
    TAutoDriver<ksAdditionFormatParam>::Bind(pintf, false);
  }

  ksAdditionFormatParamDispT(ksAdditionFormatParamPtr pintf)
  {
    TAutoDriver<ksAdditionFormatParam>::Bind(pintf, true);
  }

  ksAdditionFormatParamDispT& operator=(ksAdditionFormatParam *pintf)
  {
    TAutoDriver<ksAdditionFormatParam>::Bind(pintf, false);
    return *this;
  }

  ksAdditionFormatParamDispT& operator=(ksAdditionFormatParamPtr pintf)
  {
    TAutoDriver<ksAdditionFormatParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_AdditionFormatParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_AdditionFormatParam);
  }

  void            __fastcall set_format(short Value);
  short           __fastcall get_format();
  void            __fastcall set_formatBinary(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_formatBinary();
  void            __fastcall set_topolgyIncluded(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_topolgyIncluded();
  TOLEBOOL        __fastcall Init();

  __property   short           format = {read = get_format, write = set_format};
  __property   TOLEBOOL        formatBinary = {read = get_formatBinary, write = set_formatBinary};
  __property   TOLEBOOL        topolgyIncluded = {read = get_topolgyIncluded, write = set_topolgyIncluded};
};
typedef ksAdditionFormatParamDispT<ksAdditionFormatParam> ksAdditionFormatParamDisp;

// *********************************************************************//
// DispIntf:  ksConstraintParam
// Flags:     (4096) Dispatchable
// GUID:      {862E250D-9DB1-47E8-8EE2-9BE2D2453D5A}
// *********************************************************************//
template<class T>
class ksConstraintParamDispT : public TAutoDriver<ksConstraintParam>
{
public:
  ksConstraintParamDispT(){}

  ksConstraintParamDispT(ksConstraintParam *pintf)
  {
    TAutoDriver<ksConstraintParam>::Bind(pintf, false);
  }

  ksConstraintParamDispT(ksConstraintParamPtr pintf)
  {
    TAutoDriver<ksConstraintParam>::Bind(pintf, true);
  }

  ksConstraintParamDispT& operator=(ksConstraintParam *pintf)
  {
    TAutoDriver<ksConstraintParam>::Bind(pintf, false);
    return *this;
  }

  ksConstraintParamDispT& operator=(ksConstraintParamPtr pintf)
  {
    TAutoDriver<ksConstraintParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ConstraintParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ConstraintParam);
  }

  void            __fastcall set_constrType(short Value);
  short           __fastcall get_constrType();
  void            __fastcall set_index(int Value);
  int             __fastcall get_index();
  void            __fastcall set_partner(long Value);
  long            __fastcall get_partner();
  void            __fastcall set_partnerIndex(int Value);
  int             __fastcall get_partnerIndex();
  TOLEBOOL        __fastcall Init();

  __property   short           constrType = {read = get_constrType, write = set_constrType};
  __property   int             index = {read = get_index, write = set_index};
  __property   long            partner = {read = get_partner, write = set_partner};
  __property   int             partnerIndex = {read = get_partnerIndex, write = set_partnerIndex};
};
typedef ksConstraintParamDispT<ksConstraintParam> ksConstraintParamDisp;

// *********************************************************************//
// DispIntf:  ksImportedSurfaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {78A2C35E-A7DA-414E-B90A-F19998EC7BD1}
// *********************************************************************//
template<class T>
class ksImportedSurfaceDefinitionDispT : public TAutoDriver<ksImportedSurfaceDefinition>
{
public:
  ksImportedSurfaceDefinitionDispT(){}

  ksImportedSurfaceDefinitionDispT(ksImportedSurfaceDefinition *pintf)
  {
    TAutoDriver<ksImportedSurfaceDefinition>::Bind(pintf, false);
  }

  ksImportedSurfaceDefinitionDispT(ksImportedSurfaceDefinitionPtr pintf)
  {
    TAutoDriver<ksImportedSurfaceDefinition>::Bind(pintf, true);
  }

  ksImportedSurfaceDefinitionDispT& operator=(ksImportedSurfaceDefinition *pintf)
  {
    TAutoDriver<ksImportedSurfaceDefinition>::Bind(pintf, false);
    return *this;
  }

  ksImportedSurfaceDefinitionDispT& operator=(ksImportedSurfaceDefinitionPtr pintf)
  {
    TAutoDriver<ksImportedSurfaceDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ImportedSurfaceDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ImportedSurfaceDefinition);
  }

  TOLEBOOL        __fastcall Clear();
  TOLEBOOL        __fastcall BeginCurve();
  TOLEBOOL        __fastcall AddPoint(double x, double y, double z);
  TOLEBOOL        __fastcall EndCurve();
  TOLEBOOL        __fastcall AddCurve(TVariant arr);

};
typedef ksImportedSurfaceDefinitionDispT<ksImportedSurfaceDefinition> ksImportedSurfaceDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksFaceCollection
// Flags:     (4096) Dispatchable
// GUID:      {0E95ACE0-0E73-406F-AE94-E8A0592E298D}
// *********************************************************************//
template<class T>
class ksFaceCollectionDispT : public TAutoDriver<ksFaceCollection>
{
public:
  ksFaceCollectionDispT(){}

  ksFaceCollectionDispT(ksFaceCollection *pintf)
  {
    TAutoDriver<ksFaceCollection>::Bind(pintf, false);
  }

  ksFaceCollectionDispT(ksFaceCollectionPtr pintf)
  {
    TAutoDriver<ksFaceCollection>::Bind(pintf, true);
  }

  ksFaceCollectionDispT& operator=(ksFaceCollection *pintf)
  {
    TAutoDriver<ksFaceCollection>::Bind(pintf, false);
    return *this;
  }

  ksFaceCollectionDispT& operator=(ksFaceCollectionPtr pintf)
  {
    TAutoDriver<ksFaceCollection>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_FaceCollection));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_FaceCollection);
  }

  TOLEBOOL        __fastcall refresh();
  long            __fastcall GetCount();
  LPDISPATCH      __fastcall First();
  LPDISPATCH      __fastcall Last();
  LPDISPATCH      __fastcall Next();
  LPDISPATCH      __fastcall Prev();
  LPDISPATCH      __fastcall GetByIndex(long index);
  LPDISPATCH      __fastcall GetByName(BSTR name, TOLEBOOL testFullName/*[def,opt]*/, 
                                       TOLEBOOL testIgnoreCase/*[def,opt]*/);
  long            __fastcall FindIt(LPDISPATCH entity);

};
typedef ksFaceCollectionDispT<ksFaceCollection> ksFaceCollectionDisp;

// *********************************************************************//
// DispIntf:  ksVertexDefinition
// Flags:     (4096) Dispatchable
// GUID:      {A7257E73-EB61-4602-BC8B-2D00EA4AA062}
// *********************************************************************//
template<class T>
class ksVertexDefinitionDispT : public TAutoDriver<ksVertexDefinition>
{
public:
  ksVertexDefinitionDispT(){}

  ksVertexDefinitionDispT(ksVertexDefinition *pintf)
  {
    TAutoDriver<ksVertexDefinition>::Bind(pintf, false);
  }

  ksVertexDefinitionDispT(ksVertexDefinitionPtr pintf)
  {
    TAutoDriver<ksVertexDefinition>::Bind(pintf, true);
  }

  ksVertexDefinitionDispT& operator=(ksVertexDefinition *pintf)
  {
    TAutoDriver<ksVertexDefinition>::Bind(pintf, false);
    return *this;
  }

  ksVertexDefinitionDispT& operator=(ksVertexDefinitionPtr pintf)
  {
    TAutoDriver<ksVertexDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_VertexDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_VertexDefinition);
  }

  TOLEBOOL        __fastcall GetPoint(double* x, double* y, double* z);
  LPDISPATCH      __fastcall GetOwnerEntity();
  TOLEBOOL        __fastcall get_topologyVertex();
  TOLEBOOL        __fastcall get_freeVertex();

  __property   TOLEBOOL        topologyVertex = {read = get_topologyVertex};
  __property   TOLEBOOL        freeVertex = {read = get_freeVertex};
};
typedef ksVertexDefinitionDispT<ksVertexDefinition> ksVertexDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksTessellation
// Flags:     (4096) Dispatchable
// GUID:      {B810650E-7819-485C-90D2-ADEB647AE5E2}
// *********************************************************************//
template<class T>
class ksTessellationDispT : public TAutoDriver<ksTessellation>
{
public:
  ksTessellationDispT(){}

  ksTessellationDispT(ksTessellation *pintf)
  {
    TAutoDriver<ksTessellation>::Bind(pintf, false);
  }

  ksTessellationDispT(ksTessellationPtr pintf)
  {
    TAutoDriver<ksTessellation>::Bind(pintf, true);
  }

  ksTessellationDispT& operator=(ksTessellation *pintf)
  {
    TAutoDriver<ksTessellation>::Bind(pintf, false);
    return *this;
  }

  ksTessellationDispT& operator=(ksTessellationPtr pintf)
  {
    TAutoDriver<ksTessellation>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Tessellation));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Tessellation);
  }

  long            __fastcall GetFacetsCount();
  TOLEBOOL        __fastcall GetFacetData(int index, LPDISPATCH facet);
  long            __fastcall GetPointsCount();
  TOLEBOOL        __fastcall GetPoint(int index, float* x, float* y, float* z);
  TOLEBOOL        __fastcall GetNormal(int index, float* x, float* y, float* z);
  TOLEBOOL        __fastcall SetFacetSize(double sag);
  double          __fastcall GetFacetSize();
  LPDISPATCH      __fastcall GetFacet();
  TOLEBOOL        __fastcall refresh();
  TOLEBOOL        __fastcall GetFacetPoints(TVariant* points, TVariant* indexes);
  TOLEBOOL        __fastcall GetFacetNormals(TVariant* normals);

};
typedef ksTessellationDispT<ksTessellation> ksTessellationDisp;

// *********************************************************************//
// DispIntf:  ksFacet
// Flags:     (4096) Dispatchable
// GUID:      {EB6AFBC0-C387-4E07-B24E-DDF2B7926A26}
// *********************************************************************//
template<class T>
class ksFacetDispT : public TAutoDriver<ksFacet>
{
public:
  ksFacetDispT(){}

  ksFacetDispT(ksFacet *pintf)
  {
    TAutoDriver<ksFacet>::Bind(pintf, false);
  }

  ksFacetDispT(ksFacetPtr pintf)
  {
    TAutoDriver<ksFacet>::Bind(pintf, true);
  }

  ksFacetDispT& operator=(ksFacet *pintf)
  {
    TAutoDriver<ksFacet>::Bind(pintf, false);
    return *this;
  }

  ksFacetDispT& operator=(ksFacetPtr pintf)
  {
    TAutoDriver<ksFacet>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_facet));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_facet);
  }

  int             __fastcall GetPointsCount();
  TOLEBOOL        __fastcall GetPoint(int index, float* x, float* y, float* z);
  TOLEBOOL        __fastcall GetNormal(int index, float* x, float* y, float* z);
  int             __fastcall GetTessellationIndex(int index);

};
typedef ksFacetDispT<ksFacet> ksFacetDisp;

// *********************************************************************//
// DispIntf:  ksMeasurer
// Flags:     (4096) Dispatchable
// GUID:      {ABC84FE5-3945-4A0B-820A-719BF4B79224}
// *********************************************************************//
template<class T>
class ksMeasurerDispT : public TAutoDriver<ksMeasurer>
{
public:
  ksMeasurerDispT(){}

  ksMeasurerDispT(ksMeasurer *pintf)
  {
    TAutoDriver<ksMeasurer>::Bind(pintf, false);
  }

  ksMeasurerDispT(ksMeasurerPtr pintf)
  {
    TAutoDriver<ksMeasurer>::Bind(pintf, true);
  }

  ksMeasurerDispT& operator=(ksMeasurer *pintf)
  {
    TAutoDriver<ksMeasurer>::Bind(pintf, false);
    return *this;
  }

  ksMeasurerDispT& operator=(ksMeasurerPtr pintf)
  {
    TAutoDriver<ksMeasurer>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Measurer));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Measurer);
  }

  void            __fastcall set_unit(unsigned_long Value);
  unsigned_long   __fastcall get_unit();
  void            __fastcall set_extendObject1(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_extendObject1();
  void            __fastcall set_extendObject2(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_extendObject2();
  TOLEBOOL        __fastcall SetObject1(LPDISPATCH obj);
  TOLEBOOL        __fastcall SetObject2(LPDISPATCH obj);
  LPDISPATCH      __fastcall GetObject1();
  LPDISPATCH      __fastcall GetObject2();
  TOLEBOOL        __fastcall Calc();
  TOLEBOOL        __fastcall IsAngleValid();
  double          __fastcall get_angle();
  double          __fastcall get_distance();
  TOLEBOOL        __fastcall GetPoint1(double* x, double* y, double* z);
  TOLEBOOL        __fastcall GetPoint2(double* x, double* y, double* z);
  double          __fastcall get_MaxDistance();
  double          __fastcall get_NormalDistance();
  TOLEBOOL        __fastcall GetMaxPoint1(double* x, double* y, double* z);
  TOLEBOOL        __fastcall GetMaxPoint2(double* x, double* y, double* z);
  TOLEBOOL        __fastcall GetNormalPoint1(double* x, double* y, double* z);
  TOLEBOOL        __fastcall GetNormalPoint2(double* x, double* y, double* z);
  long            __fastcall get_MeasureResult();

  __property   unsigned_long   unit = {read = get_unit, write = set_unit};
  __property   TOLEBOOL        extendObject1 = {read = get_extendObject1, write = set_extendObject1};
  __property   TOLEBOOL        extendObject2 = {read = get_extendObject2, write = set_extendObject2};
  __property   double          angle = {read = get_angle};
  __property   double          distance = {read = get_distance};
  __property   double          MaxDistance = {read = get_MaxDistance};
  __property   double          NormalDistance = {read = get_NormalDistance};
  __property   long            MeasureResult = {read = get_MeasureResult};
};
typedef ksMeasurerDispT<ksMeasurer> ksMeasurerDisp;

// *********************************************************************//
// DispIntf:  ksBodyCollection
// Flags:     (4096) Dispatchable
// GUID:      {CFC49C01-7653-4845-93FD-13428F5D58EC}
// *********************************************************************//
template<class T>
class ksBodyCollectionDispT : public TAutoDriver<ksBodyCollection>
{
public:
  ksBodyCollectionDispT(){}

  ksBodyCollectionDispT(ksBodyCollection *pintf)
  {
    TAutoDriver<ksBodyCollection>::Bind(pintf, false);
  }

  ksBodyCollectionDispT(ksBodyCollectionPtr pintf)
  {
    TAutoDriver<ksBodyCollection>::Bind(pintf, true);
  }

  ksBodyCollectionDispT& operator=(ksBodyCollection *pintf)
  {
    TAutoDriver<ksBodyCollection>::Bind(pintf, false);
    return *this;
  }

  ksBodyCollectionDispT& operator=(ksBodyCollectionPtr pintf)
  {
    TAutoDriver<ksBodyCollection>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_BodyCollection));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_BodyCollection);
  }

  TOLEBOOL        __fastcall refresh();
  long            __fastcall GetCount();
  LPDISPATCH      __fastcall First();
  LPDISPATCH      __fastcall Last();
  LPDISPATCH      __fastcall Next();
  LPDISPATCH      __fastcall Prev();
  LPDISPATCH      __fastcall GetByIndex(long index);
  long            __fastcall FindIt(LPDISPATCH entity);
  TOLEBOOL        __fastcall Clear();
  TOLEBOOL        __fastcall Add(LPDISPATCH body);
  TOLEBOOL        __fastcall AddAt(LPDISPATCH body, long index);
  TOLEBOOL        __fastcall AddBefore(LPDISPATCH body, LPDISPATCH base);
  TOLEBOOL        __fastcall DetachByIndex(long index);
  TOLEBOOL        __fastcall DetachByBody(LPDISPATCH body);
  TOLEBOOL        __fastcall SetByIndex(LPDISPATCH body, long index);

};
typedef ksBodyCollectionDispT<ksBodyCollection> ksBodyCollectionDisp;

// *********************************************************************//
// DispIntf:  ksBody
// Flags:     (4096) Dispatchable
// GUID:      {03EFC9DD-E05A-4277-BC7C-4FD499A252DE}
// *********************************************************************//
template<class T>
class ksBodyDispT : public TAutoDriver<ksBody>
{
public:
  ksBodyDispT(){}

  ksBodyDispT(ksBody *pintf)
  {
    TAutoDriver<ksBody>::Bind(pintf, false);
  }

  ksBodyDispT(ksBodyPtr pintf)
  {
    TAutoDriver<ksBody>::Bind(pintf, true);
  }

  ksBodyDispT& operator=(ksBody *pintf)
  {
    TAutoDriver<ksBody>::Bind(pintf, false);
    return *this;
  }

  ksBodyDispT& operator=(ksBodyPtr pintf)
  {
    TAutoDriver<ksBody>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_body));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_body);
  }

  TOLEBOOL        __fastcall GetGabarit(double* x1, double* y1, double* z1, double* x2, double* y2, 
                                        double* z2);
  LPDISPATCH      __fastcall FaceCollection();
  TOLEBOOL        __fastcall IsSolid();
  LPDISPATCH      __fastcall CalcMassInertiaProperties(unsigned_long bitVector);
  TOLEBOOL        __fastcall CurveIntersection(LPDISPATCH curve, LPDISPATCH fases, LPDISPATCH points);
  LPDISPATCH      __fastcall CheckIntersectionWithBody(LPDISPATCH otherBody, TOLEBOOL checkTangent);
  TOLEBOOL        __fastcall get_MultiBodyParts();
  LPDISPATCH      __fastcall GetFeature();
  long            __fastcall GetIntersectionFacesWithBody(LPDISPATCH otherBody, 
                                                          TVariant* intersectionFaces1, 
                                                          TVariant* intersectionFaces2, 
                                                          TVariant* connectedFaces1, 
                                                          TVariant* connectedFaces2);

  __property   TOLEBOOL        MultiBodyParts = {read = get_MultiBodyParts};
};
typedef ksBodyDispT<ksBody> ksBodyDisp;

// *********************************************************************//
// DispIntf:  ksSurface
// Flags:     (4096) Dispatchable
// GUID:      {963CB6E1-B9BF-4234-964A-13BFE6C0282A}
// *********************************************************************//
template<class T>
class ksSurfaceDispT : public TAutoDriver<ksSurface>
{
public:
  ksSurfaceDispT(){}

  ksSurfaceDispT(ksSurface *pintf)
  {
    TAutoDriver<ksSurface>::Bind(pintf, false);
  }

  ksSurfaceDispT(ksSurfacePtr pintf)
  {
    TAutoDriver<ksSurface>::Bind(pintf, true);
  }

  ksSurfaceDispT& operator=(ksSurface *pintf)
  {
    TAutoDriver<ksSurface>::Bind(pintf, false);
    return *this;
  }

  ksSurfaceDispT& operator=(ksSurfacePtr pintf)
  {
    TAutoDriver<ksSurface>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Surface));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Surface);
  }

  TOLEBOOL        __fastcall GetGabarit(double* x1, double* y1, double* z1, double* x2, double* y2, 
                                        double* z2);
  TOLEBOOL        __fastcall GetPoint(double paramU, double paramV, double* x, double* y, double* z);
  TOLEBOOL        __fastcall GetNormal(double paramU, double paramV, double* x, double* y, double* z);
  TOLEBOOL        __fastcall GetTangentVectorU(double paramU, double paramV, double* x, double* y, 
                                               double* z);
  TOLEBOOL        __fastcall GetTangentVectorV(double paramU, double paramV, double* x, double* y, 
                                               double* z);
  TOLEBOOL        __fastcall GetDerivativeU(double paramU, double paramV, double* x, double* y, 
                                            double* z);
  TOLEBOOL        __fastcall GetDerivativeV(double paramU, double paramV, double* x, double* y, 
                                            double* z);
  TOLEBOOL        __fastcall GetDerivativeUU(double paramU, double paramV, double* x, double* y, 
                                             double* z);
  TOLEBOOL        __fastcall GetDerivativeVV(double paramU, double paramV, double* x, double* y, 
                                             double* z);
  TOLEBOOL        __fastcall GetDerivativeUV(double paramU, double paramV, double* x, double* y, 
                                             double* z);
  TOLEBOOL        __fastcall GetDerivativeUUU(double paramU, double paramV, double* x, double* y, 
                                              double* z);
  TOLEBOOL        __fastcall GetDerivativeVVV(double paramU, double paramV, double* x, double* y, 
                                              double* z);
  TOLEBOOL        __fastcall GetDerivativeUVV(double paramU, double paramV, double* x, double* y, 
                                              double* z);
  TOLEBOOL        __fastcall GetDerivativeUUV(double paramU, double paramV, double* x, double* y, 
                                              double* z);
  double          __fastcall GetParamUMin();
  double          __fastcall GetParamUMax();
  double          __fastcall GetParamVMin();
  double          __fastcall GetParamVMax();
  TOLEBOOL        __fastcall IsClosedU();
  TOLEBOOL        __fastcall IsClosedV();
  TOLEBOOL        __fastcall IsPlane();
  TOLEBOOL        __fastcall IsCone();
  TOLEBOOL        __fastcall IsCylinder();
  TOLEBOOL        __fastcall IsTorus();
  TOLEBOOL        __fastcall IsSphere();
  TOLEBOOL        __fastcall IsNurbsSurface();
  TOLEBOOL        __fastcall IsRevolved();
  TOLEBOOL        __fastcall IsSwept();
  LPDISPATCH      __fastcall GetSurfaceParam();
  double          __fastcall GetArea(unsigned_long bitVector);
  TOLEBOOL        __fastcall NearPointProjection(double x, double y, double z, double* u, double* v
                                                 , TOLEBOOL ext);
  TOLEBOOL        __fastcall CurveIntersection(LPDISPATCH curve, LPDISPATCH points, TOLEBOOL extSurf
                                               , TOLEBOOL extCurve);
  LPDISPATCH      __fastcall GetNurbsSurfaceParam();
  TOLEBOOL        __fastcall GetBoundaryUVNurbs(TOLEBOOL uv, TOLEBOOL closed, long loopIndex, 
                                                long edgeIndex, long* degree, TVariant* points, 
                                                TVariant* weights, TVariant* knots, double* tMin, 
                                                double* tMax);
  long            __fastcall get_BoundaryCount();
  long            __fastcall GetEdgesCount(long loopIndex);

  __property   long            BoundaryCount = {read = get_BoundaryCount};
};
typedef ksSurfaceDispT<ksSurface> ksSurfaceDisp;

// *********************************************************************//
// DispIntf:  ksEdgeCollection
// Flags:     (4096) Dispatchable
// GUID:      {6096A4FD-970B-468C-815E-37CA1970A203}
// *********************************************************************//
template<class T>
class ksEdgeCollectionDispT : public TAutoDriver<ksEdgeCollection>
{
public:
  ksEdgeCollectionDispT(){}

  ksEdgeCollectionDispT(ksEdgeCollection *pintf)
  {
    TAutoDriver<ksEdgeCollection>::Bind(pintf, false);
  }

  ksEdgeCollectionDispT(ksEdgeCollectionPtr pintf)
  {
    TAutoDriver<ksEdgeCollection>::Bind(pintf, true);
  }

  ksEdgeCollectionDispT& operator=(ksEdgeCollection *pintf)
  {
    TAutoDriver<ksEdgeCollection>::Bind(pintf, false);
    return *this;
  }

  ksEdgeCollectionDispT& operator=(ksEdgeCollectionPtr pintf)
  {
    TAutoDriver<ksEdgeCollection>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_EdgeCollection));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_EdgeCollection);
  }

  TOLEBOOL        __fastcall refresh();
  long            __fastcall GetCount();
  LPDISPATCH      __fastcall First();
  LPDISPATCH      __fastcall Last();
  LPDISPATCH      __fastcall Next();
  LPDISPATCH      __fastcall Prev();
  LPDISPATCH      __fastcall GetByIndex(long index);
  long            __fastcall FindIt(LPDISPATCH entity);

};
typedef ksEdgeCollectionDispT<ksEdgeCollection> ksEdgeCollectionDisp;

// *********************************************************************//
// DispIntf:  ksOrientedEdge
// Flags:     (4096) Dispatchable
// GUID:      {88C32A80-3735-4E18-A02E-9B2A8F0A90E3}
// *********************************************************************//
template<class T>
class ksOrientedEdgeDispT : public TAutoDriver<ksOrientedEdge>
{
public:
  ksOrientedEdgeDispT(){}

  ksOrientedEdgeDispT(ksOrientedEdge *pintf)
  {
    TAutoDriver<ksOrientedEdge>::Bind(pintf, false);
  }

  ksOrientedEdgeDispT(ksOrientedEdgePtr pintf)
  {
    TAutoDriver<ksOrientedEdge>::Bind(pintf, true);
  }

  ksOrientedEdgeDispT& operator=(ksOrientedEdge *pintf)
  {
    TAutoDriver<ksOrientedEdge>::Bind(pintf, false);
    return *this;
  }

  ksOrientedEdgeDispT& operator=(ksOrientedEdgePtr pintf)
  {
    TAutoDriver<ksOrientedEdge>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_OrientedEdge));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_OrientedEdge);
  }

  LPDISPATCH      __fastcall GetEdge();
  TOLEBOOL        __fastcall GetOrientation();
  LPDISPATCH      __fastcall GetOwnerEntity();
  LPDISPATCH      __fastcall GetNext();
  TOLEBOOL        __fastcall GetSameSense();
  LPDISPATCH      __fastcall GetAdjacentFace(long facePlus);

};
typedef ksOrientedEdgeDispT<ksOrientedEdge> ksOrientedEdgeDisp;

// *********************************************************************//
// DispIntf:  ksOrientedEdgeCollection
// Flags:     (4096) Dispatchable
// GUID:      {5CE8909D-CF3D-418F-A9B9-0A12B23916C0}
// *********************************************************************//
template<class T>
class ksOrientedEdgeCollectionDispT : public TAutoDriver<ksOrientedEdgeCollection>
{
public:
  ksOrientedEdgeCollectionDispT(){}

  ksOrientedEdgeCollectionDispT(ksOrientedEdgeCollection *pintf)
  {
    TAutoDriver<ksOrientedEdgeCollection>::Bind(pintf, false);
  }

  ksOrientedEdgeCollectionDispT(ksOrientedEdgeCollectionPtr pintf)
  {
    TAutoDriver<ksOrientedEdgeCollection>::Bind(pintf, true);
  }

  ksOrientedEdgeCollectionDispT& operator=(ksOrientedEdgeCollection *pintf)
  {
    TAutoDriver<ksOrientedEdgeCollection>::Bind(pintf, false);
    return *this;
  }

  ksOrientedEdgeCollectionDispT& operator=(ksOrientedEdgeCollectionPtr pintf)
  {
    TAutoDriver<ksOrientedEdgeCollection>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_OrientedEdgeCollection));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_OrientedEdgeCollection);
  }

  TOLEBOOL        __fastcall refresh();
  long            __fastcall GetCount();
  LPDISPATCH      __fastcall First();
  LPDISPATCH      __fastcall Last();
  LPDISPATCH      __fastcall Next();
  LPDISPATCH      __fastcall Prev();
  LPDISPATCH      __fastcall GetByIndex(long index);
  long            __fastcall FindIt(LPDISPATCH entity);

};
typedef ksOrientedEdgeCollectionDispT<ksOrientedEdgeCollection> ksOrientedEdgeCollectionDisp;

// *********************************************************************//
// DispIntf:  ksLoop
// Flags:     (4096) Dispatchable
// GUID:      {22BC5C86-CF58-45E4-AA46-5E8D5A825798}
// *********************************************************************//
template<class T>
class ksLoopDispT : public TAutoDriver<ksLoop>
{
public:
  ksLoopDispT(){}

  ksLoopDispT(ksLoop *pintf)
  {
    TAutoDriver<ksLoop>::Bind(pintf, false);
  }

  ksLoopDispT(ksLoopPtr pintf)
  {
    TAutoDriver<ksLoop>::Bind(pintf, true);
  }

  ksLoopDispT& operator=(ksLoop *pintf)
  {
    TAutoDriver<ksLoop>::Bind(pintf, false);
    return *this;
  }

  ksLoopDispT& operator=(ksLoopPtr pintf)
  {
    TAutoDriver<ksLoop>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Loop));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Loop);
  }

  LPDISPATCH      __fastcall OrientedEdgeCollection(LPDISPATCH edge);
  LPDISPATCH      __fastcall EdgeCollection();
  TOLEBOOL        __fastcall IsOuter();
  double          __fastcall GetLength(unsigned_long bitVector);

};
typedef ksLoopDispT<ksLoop> ksLoopDisp;

// *********************************************************************//
// DispIntf:  ksLoopCollection
// Flags:     (4096) Dispatchable
// GUID:      {1BD7207E-36AA-47DF-913E-AD26DE6C16E8}
// *********************************************************************//
template<class T>
class ksLoopCollectionDispT : public TAutoDriver<ksLoopCollection>
{
public:
  ksLoopCollectionDispT(){}

  ksLoopCollectionDispT(ksLoopCollection *pintf)
  {
    TAutoDriver<ksLoopCollection>::Bind(pintf, false);
  }

  ksLoopCollectionDispT(ksLoopCollectionPtr pintf)
  {
    TAutoDriver<ksLoopCollection>::Bind(pintf, true);
  }

  ksLoopCollectionDispT& operator=(ksLoopCollection *pintf)
  {
    TAutoDriver<ksLoopCollection>::Bind(pintf, false);
    return *this;
  }

  ksLoopCollectionDispT& operator=(ksLoopCollectionPtr pintf)
  {
    TAutoDriver<ksLoopCollection>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_LoopCollection));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_LoopCollection);
  }

  TOLEBOOL        __fastcall refresh();
  long            __fastcall GetCount();
  LPDISPATCH      __fastcall First();
  LPDISPATCH      __fastcall Last();
  LPDISPATCH      __fastcall Next();
  LPDISPATCH      __fastcall Prev();
  LPDISPATCH      __fastcall GetByIndex(long index);

};
typedef ksLoopCollectionDispT<ksLoopCollection> ksLoopCollectionDisp;

// *********************************************************************//
// DispIntf:  ksCurve3D
// Flags:     (4096) Dispatchable
// GUID:      {7572648A-D4EE-41FE-8D74-EC7D1F91BDE2}
// *********************************************************************//
template<class T>
class ksCurve3DDispT : public TAutoDriver<ksCurve3D>
{
public:
  ksCurve3DDispT(){}

  ksCurve3DDispT(ksCurve3D *pintf)
  {
    TAutoDriver<ksCurve3D>::Bind(pintf, false);
  }

  ksCurve3DDispT(ksCurve3DPtr pintf)
  {
    TAutoDriver<ksCurve3D>::Bind(pintf, true);
  }

  ksCurve3DDispT& operator=(ksCurve3D *pintf)
  {
    TAutoDriver<ksCurve3D>::Bind(pintf, false);
    return *this;
  }

  ksCurve3DDispT& operator=(ksCurve3DPtr pintf)
  {
    TAutoDriver<ksCurve3D>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Curve3D));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Curve3D);
  }

  TOLEBOOL        __fastcall GetPoint(double paramT, double* x, double* y, double* z);
  TOLEBOOL        __fastcall GetTangentVector(double paramT, double* x, double* y, double* z);
  TOLEBOOL        __fastcall GetNormal(double paramT, double* x, double* y, double* z);
  TOLEBOOL        __fastcall GetDerivativeT(double paramT, double* x, double* y, double* z);
  TOLEBOOL        __fastcall GetDerivativeTT(double paramT, double* x, double* y, double* z);
  TOLEBOOL        __fastcall GetDerivativeTTT(double paramT, double* x, double* y, double* z);
  double          __fastcall GetParamMin();
  double          __fastcall GetParamMax();
  TOLEBOOL        __fastcall IsClosed();
  TOLEBOOL        __fastcall IsPeriodic();
  double          __fastcall GetMetricLength(double startParam, double endParam);
  TOLEBOOL        __fastcall GetGabarit(double* x1, double* y1, double* z1, double* x2, double* y2, 
                                        double* z2);
  TOLEBOOL        __fastcall IsDegenerate();
  TOLEBOOL        __fastcall IsPlanar();
  TOLEBOOL        __fastcall IsLineSeg();
  TOLEBOOL        __fastcall IsArc();
  TOLEBOOL        __fastcall IsCircle();
  TOLEBOOL        __fastcall IsEllipse();
  TOLEBOOL        __fastcall IsNurbs();
  LPDISPATCH      __fastcall GetCurveParam();
  double          __fastcall GetLength(unsigned_long bitVector);
  TOLEBOOL        __fastcall NearPointProjection(double x, double y, double z, double* t, 
                                                 TOLEBOOL ext);
  LPDISPATCH      __fastcall GetNurbs3dParam();
  TVariant        __fastcall CalculatePolygon(double step);

};
typedef ksCurve3DDispT<ksCurve3D> ksCurve3DDisp;

// *********************************************************************//
// DispIntf:  ksLineSeg3dParam
// Flags:     (4096) Dispatchable
// GUID:      {DC8F6A7B-FF16-46FF-986D-2F7E1F6B25C4}
// *********************************************************************//
template<class T>
class ksLineSeg3dParamDispT : public TAutoDriver<ksLineSeg3dParam>
{
public:
  ksLineSeg3dParamDispT(){}

  ksLineSeg3dParamDispT(ksLineSeg3dParam *pintf)
  {
    TAutoDriver<ksLineSeg3dParam>::Bind(pintf, false);
  }

  ksLineSeg3dParamDispT(ksLineSeg3dParamPtr pintf)
  {
    TAutoDriver<ksLineSeg3dParam>::Bind(pintf, true);
  }

  ksLineSeg3dParamDispT& operator=(ksLineSeg3dParam *pintf)
  {
    TAutoDriver<ksLineSeg3dParam>::Bind(pintf, false);
    return *this;
  }

  ksLineSeg3dParamDispT& operator=(ksLineSeg3dParamPtr pintf)
  {
    TAutoDriver<ksLineSeg3dParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_LineSeg3dParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_LineSeg3dParam);
  }

  TOLEBOOL        __fastcall GetPointFirst(double* x, double* y, double* z);
  TOLEBOOL        __fastcall GetPointLast(double* x, double* y, double* z);

};
typedef ksLineSeg3dParamDispT<ksLineSeg3dParam> ksLineSeg3dParamDisp;

// *********************************************************************//
// DispIntf:  ksCircle3dParam
// Flags:     (4096) Dispatchable
// GUID:      {82758442-C9EB-48F7-B304-083C5E64D4E0}
// *********************************************************************//
template<class T>
class ksCircle3dParamDispT : public TAutoDriver<ksCircle3dParam>
{
public:
  ksCircle3dParamDispT(){}

  ksCircle3dParamDispT(ksCircle3dParam *pintf)
  {
    TAutoDriver<ksCircle3dParam>::Bind(pintf, false);
  }

  ksCircle3dParamDispT(ksCircle3dParamPtr pintf)
  {
    TAutoDriver<ksCircle3dParam>::Bind(pintf, true);
  }

  ksCircle3dParamDispT& operator=(ksCircle3dParam *pintf)
  {
    TAutoDriver<ksCircle3dParam>::Bind(pintf, false);
    return *this;
  }

  ksCircle3dParamDispT& operator=(ksCircle3dParamPtr pintf)
  {
    TAutoDriver<ksCircle3dParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Circle3dParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Circle3dParam);
  }

  double          __fastcall get_radius();
  LPDISPATCH      __fastcall GetPlacement();

  __property   double          radius = {read = get_radius};
};
typedef ksCircle3dParamDispT<ksCircle3dParam> ksCircle3dParamDisp;

// *********************************************************************//
// DispIntf:  ksEllipse3dParam
// Flags:     (4096) Dispatchable
// GUID:      {5B8082B8-6AD3-4509-826D-D23B7F613213}
// *********************************************************************//
template<class T>
class ksEllipse3dParamDispT : public TAutoDriver<ksEllipse3dParam>
{
public:
  ksEllipse3dParamDispT(){}

  ksEllipse3dParamDispT(ksEllipse3dParam *pintf)
  {
    TAutoDriver<ksEllipse3dParam>::Bind(pintf, false);
  }

  ksEllipse3dParamDispT(ksEllipse3dParamPtr pintf)
  {
    TAutoDriver<ksEllipse3dParam>::Bind(pintf, true);
  }

  ksEllipse3dParamDispT& operator=(ksEllipse3dParam *pintf)
  {
    TAutoDriver<ksEllipse3dParam>::Bind(pintf, false);
    return *this;
  }

  ksEllipse3dParamDispT& operator=(ksEllipse3dParamPtr pintf)
  {
    TAutoDriver<ksEllipse3dParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Ellipse3dParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Ellipse3dParam);
  }

  double          __fastcall get_majorRadius();
  double          __fastcall get_minorRadius();
  LPDISPATCH      __fastcall GetPlacement();

  __property   double          majorRadius = {read = get_majorRadius};
  __property   double          minorRadius = {read = get_minorRadius};
};
typedef ksEllipse3dParamDispT<ksEllipse3dParam> ksEllipse3dParamDisp;

// *********************************************************************//
// DispIntf:  ksPlaneParam
// Flags:     (4096) Dispatchable
// GUID:      {6A6F6B95-D100-4D54-A430-70A42D342917}
// *********************************************************************//
template<class T>
class ksPlaneParamDispT : public TAutoDriver<ksPlaneParam>
{
public:
  ksPlaneParamDispT(){}

  ksPlaneParamDispT(ksPlaneParam *pintf)
  {
    TAutoDriver<ksPlaneParam>::Bind(pintf, false);
  }

  ksPlaneParamDispT(ksPlaneParamPtr pintf)
  {
    TAutoDriver<ksPlaneParam>::Bind(pintf, true);
  }

  ksPlaneParamDispT& operator=(ksPlaneParam *pintf)
  {
    TAutoDriver<ksPlaneParam>::Bind(pintf, false);
    return *this;
  }

  ksPlaneParamDispT& operator=(ksPlaneParamPtr pintf)
  {
    TAutoDriver<ksPlaneParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_PlaneParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_PlaneParam);
  }

  LPDISPATCH      __fastcall GetPlacement();

};
typedef ksPlaneParamDispT<ksPlaneParam> ksPlaneParamDisp;

// *********************************************************************//
// DispIntf:  ksConeParam
// Flags:     (4096) Dispatchable
// GUID:      {CCFA0D95-0834-4F92-988B-6E477AD67589}
// *********************************************************************//
template<class T>
class ksConeParamDispT : public TAutoDriver<ksConeParam>
{
public:
  ksConeParamDispT(){}

  ksConeParamDispT(ksConeParam *pintf)
  {
    TAutoDriver<ksConeParam>::Bind(pintf, false);
  }

  ksConeParamDispT(ksConeParamPtr pintf)
  {
    TAutoDriver<ksConeParam>::Bind(pintf, true);
  }

  ksConeParamDispT& operator=(ksConeParam *pintf)
  {
    TAutoDriver<ksConeParam>::Bind(pintf, false);
    return *this;
  }

  ksConeParamDispT& operator=(ksConeParamPtr pintf)
  {
    TAutoDriver<ksConeParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ConeParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ConeParam);
  }

  double          __fastcall get_radius();
  double          __fastcall get_height();
  double          __fastcall get_angle();
  LPDISPATCH      __fastcall GetPlacement();

  __property   double          radius = {read = get_radius};
  __property   double          height = {read = get_height};
  __property   double          angle = {read = get_angle};
};
typedef ksConeParamDispT<ksConeParam> ksConeParamDisp;

// *********************************************************************//
// DispIntf:  ksCylinderParam
// Flags:     (4096) Dispatchable
// GUID:      {5D462836-CF69-4995-AB78-8C7A83D09BD7}
// *********************************************************************//
template<class T>
class ksCylinderParamDispT : public TAutoDriver<ksCylinderParam>
{
public:
  ksCylinderParamDispT(){}

  ksCylinderParamDispT(ksCylinderParam *pintf)
  {
    TAutoDriver<ksCylinderParam>::Bind(pintf, false);
  }

  ksCylinderParamDispT(ksCylinderParamPtr pintf)
  {
    TAutoDriver<ksCylinderParam>::Bind(pintf, true);
  }

  ksCylinderParamDispT& operator=(ksCylinderParam *pintf)
  {
    TAutoDriver<ksCylinderParam>::Bind(pintf, false);
    return *this;
  }

  ksCylinderParamDispT& operator=(ksCylinderParamPtr pintf)
  {
    TAutoDriver<ksCylinderParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_CylinderParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_CylinderParam);
  }

  double          __fastcall get_radius();
  double          __fastcall get_height();
  LPDISPATCH      __fastcall GetPlacement();

  __property   double          radius = {read = get_radius};
  __property   double          height = {read = get_height};
};
typedef ksCylinderParamDispT<ksCylinderParam> ksCylinderParamDisp;

// *********************************************************************//
// DispIntf:  ksSphereParam
// Flags:     (4096) Dispatchable
// GUID:      {C32977F3-3CA7-4D56-8AE7-4963E6851B75}
// *********************************************************************//
template<class T>
class ksSphereParamDispT : public TAutoDriver<ksSphereParam>
{
public:
  ksSphereParamDispT(){}

  ksSphereParamDispT(ksSphereParam *pintf)
  {
    TAutoDriver<ksSphereParam>::Bind(pintf, false);
  }

  ksSphereParamDispT(ksSphereParamPtr pintf)
  {
    TAutoDriver<ksSphereParam>::Bind(pintf, true);
  }

  ksSphereParamDispT& operator=(ksSphereParam *pintf)
  {
    TAutoDriver<ksSphereParam>::Bind(pintf, false);
    return *this;
  }

  ksSphereParamDispT& operator=(ksSphereParamPtr pintf)
  {
    TAutoDriver<ksSphereParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_SphereParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_SphereParam);
  }

  double          __fastcall get_radius();
  LPDISPATCH      __fastcall GetPlacement();

  __property   double          radius = {read = get_radius};
};
typedef ksSphereParamDispT<ksSphereParam> ksSphereParamDisp;

// *********************************************************************//
// DispIntf:  ksTorusParam
// Flags:     (4096) Dispatchable
// GUID:      {FDA3B147-BAF1-4F75-99AA-39D11323EA97}
// *********************************************************************//
template<class T>
class ksTorusParamDispT : public TAutoDriver<ksTorusParam>
{
public:
  ksTorusParamDispT(){}

  ksTorusParamDispT(ksTorusParam *pintf)
  {
    TAutoDriver<ksTorusParam>::Bind(pintf, false);
  }

  ksTorusParamDispT(ksTorusParamPtr pintf)
  {
    TAutoDriver<ksTorusParam>::Bind(pintf, true);
  }

  ksTorusParamDispT& operator=(ksTorusParam *pintf)
  {
    TAutoDriver<ksTorusParam>::Bind(pintf, false);
    return *this;
  }

  ksTorusParamDispT& operator=(ksTorusParamPtr pintf)
  {
    TAutoDriver<ksTorusParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_TorusParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_TorusParam);
  }

  double          __fastcall get_radius();
  double          __fastcall get_generatrixRadius();
  LPDISPATCH      __fastcall GetPlacement();

  __property   double          radius = {read = get_radius};
  __property   double          generatrixRadius = {read = get_generatrixRadius};
};
typedef ksTorusParamDispT<ksTorusParam> ksTorusParamDisp;

// *********************************************************************//
// DispIntf:  ksNurbsPoint3dParam
// Flags:     (4096) Dispatchable
// GUID:      {F1CD604D-1D26-4F6B-8F94-F112133E6162}
// *********************************************************************//
template<class T>
class ksNurbsPoint3dParamDispT : public TAutoDriver<ksNurbsPoint3dParam>
{
public:
  ksNurbsPoint3dParamDispT(){}

  ksNurbsPoint3dParamDispT(ksNurbsPoint3dParam *pintf)
  {
    TAutoDriver<ksNurbsPoint3dParam>::Bind(pintf, false);
  }

  ksNurbsPoint3dParamDispT(ksNurbsPoint3dParamPtr pintf)
  {
    TAutoDriver<ksNurbsPoint3dParam>::Bind(pintf, true);
  }

  ksNurbsPoint3dParamDispT& operator=(ksNurbsPoint3dParam *pintf)
  {
    TAutoDriver<ksNurbsPoint3dParam>::Bind(pintf, false);
    return *this;
  }

  ksNurbsPoint3dParamDispT& operator=(ksNurbsPoint3dParamPtr pintf)
  {
    TAutoDriver<ksNurbsPoint3dParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_NurbsPoint3dParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_NurbsPoint3dParam);
  }

  TOLEBOOL        __fastcall GetPoint(double* x, double* y, double* z);
  double          __fastcall get_weight();

  __property   double          weight = {read = get_weight};
};
typedef ksNurbsPoint3dParamDispT<ksNurbsPoint3dParam> ksNurbsPoint3dParamDisp;

// *********************************************************************//
// DispIntf:  ksNurbsSurfaceParam
// Flags:     (4096) Dispatchable
// GUID:      {A12B63E8-9E0A-4854-B724-E18275B9FF20}
// *********************************************************************//
template<class T>
class ksNurbsSurfaceParamDispT : public TAutoDriver<ksNurbsSurfaceParam>
{
public:
  ksNurbsSurfaceParamDispT(){}

  ksNurbsSurfaceParamDispT(ksNurbsSurfaceParam *pintf)
  {
    TAutoDriver<ksNurbsSurfaceParam>::Bind(pintf, false);
  }

  ksNurbsSurfaceParamDispT(ksNurbsSurfaceParamPtr pintf)
  {
    TAutoDriver<ksNurbsSurfaceParam>::Bind(pintf, true);
  }

  ksNurbsSurfaceParamDispT& operator=(ksNurbsSurfaceParam *pintf)
  {
    TAutoDriver<ksNurbsSurfaceParam>::Bind(pintf, false);
    return *this;
  }

  ksNurbsSurfaceParamDispT& operator=(ksNurbsSurfaceParamPtr pintf)
  {
    TAutoDriver<ksNurbsSurfaceParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_NurbsSurfaceParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_NurbsSurfaceParam);
  }

  short           __fastcall GetDegree(TOLEBOOL paramU);
  TOLEBOOL        __fastcall GetClose(TOLEBOOL paramU);
  LPDISPATCH      __fastcall GetPointCollection();
  LPDISPATCH      __fastcall GetKnotCollection(TOLEBOOL paramU);
  TOLEBOOL        __fastcall GetPeriodic(TOLEBOOL paramU);
  TOLEBOOL        __fastcall GetNurbsParams(TOLEBOOL closedV, TOLEBOOL closedU, long* degreeV, 
                                            long* degreeU, long* nPV, long* nPU, TVariant* points, 
                                            TVariant* weights, TVariant* knotsV, TVariant* knotsU);
  TOLEBOOL        __fastcall GetBoundaryUVNurbs(TOLEBOOL uv, TOLEBOOL closed, long loopIndex, 
                                                long edgeIndex, long* degree, TVariant* points, 
                                                TVariant* weights, TVariant* knots, double* tMin, 
                                                double* tMax);
  long            __fastcall GetBoundaryCount();
  long            __fastcall GetEdgesCount(long loopIndex);
  TOLEBOOL        __fastcall GetMinMaxParameters(TOLEBOOL closedV, TOLEBOOL closedU, double* uMin, 
                                                 double* uMax, double* vMin, double* vMax);

};
typedef ksNurbsSurfaceParamDispT<ksNurbsSurfaceParam> ksNurbsSurfaceParamDisp;

// *********************************************************************//
// DispIntf:  ksNurbs3dParam
// Flags:     (4096) Dispatchable
// GUID:      {4DDDAEDB-2819-42D9-BDBB-4CCBC98D76DF}
// *********************************************************************//
template<class T>
class ksNurbs3dParamDispT : public TAutoDriver<ksNurbs3dParam>
{
public:
  ksNurbs3dParamDispT(){}

  ksNurbs3dParamDispT(ksNurbs3dParam *pintf)
  {
    TAutoDriver<ksNurbs3dParam>::Bind(pintf, false);
  }

  ksNurbs3dParamDispT(ksNurbs3dParamPtr pintf)
  {
    TAutoDriver<ksNurbs3dParam>::Bind(pintf, true);
  }

  ksNurbs3dParamDispT& operator=(ksNurbs3dParam *pintf)
  {
    TAutoDriver<ksNurbs3dParam>::Bind(pintf, false);
    return *this;
  }

  ksNurbs3dParamDispT& operator=(ksNurbs3dParamPtr pintf)
  {
    TAutoDriver<ksNurbs3dParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Nurbs3dParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Nurbs3dParam);
  }

  short           __fastcall get_degree();
  TOLEBOOL        __fastcall get_close();
  LPDISPATCH      __fastcall GetPointCollection();
  LPDISPATCH      __fastcall GetKnotCollection();
  TOLEBOOL        __fastcall get_periodic();
  TOLEBOOL        __fastcall GetNurbsPoints3DParams(TOLEBOOL closed, TVariant* points, 
                                                    TVariant* weights, TVariant* knots);
  TOLEBOOL        __fastcall GetMinMaxParameters(TOLEBOOL closed, double* tMin, double* tMax);

  __property   short           degree = {read = get_degree};
  __property   TOLEBOOL        close = {read = get_close};
  __property   TOLEBOOL        periodic = {read = get_periodic};
};
typedef ksNurbs3dParamDispT<ksNurbs3dParam> ksNurbs3dParamDisp;

// *********************************************************************//
// DispIntf:  ksNurbsKnotCollection
// Flags:     (4096) Dispatchable
// GUID:      {483E9889-E1CA-4CA5-BE4E-ECB3D5CF0126}
// *********************************************************************//
template<class T>
class ksNurbsKnotCollectionDispT : public TAutoDriver<ksNurbsKnotCollection>
{
public:
  ksNurbsKnotCollectionDispT(){}

  ksNurbsKnotCollectionDispT(ksNurbsKnotCollection *pintf)
  {
    TAutoDriver<ksNurbsKnotCollection>::Bind(pintf, false);
  }

  ksNurbsKnotCollectionDispT(ksNurbsKnotCollectionPtr pintf)
  {
    TAutoDriver<ksNurbsKnotCollection>::Bind(pintf, true);
  }

  ksNurbsKnotCollectionDispT& operator=(ksNurbsKnotCollection *pintf)
  {
    TAutoDriver<ksNurbsKnotCollection>::Bind(pintf, false);
    return *this;
  }

  ksNurbsKnotCollectionDispT& operator=(ksNurbsKnotCollectionPtr pintf)
  {
    TAutoDriver<ksNurbsKnotCollection>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_NurbsKnotCollection));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_NurbsKnotCollection);
  }

  TOLEBOOL        __fastcall refresh();
  long            __fastcall GetCount();
  double          __fastcall First();
  double          __fastcall Last();
  double          __fastcall Next();
  double          __fastcall Prev();
  double          __fastcall GetByIndex(long index);
  TOLEBOOL        __fastcall Clear();
  TOLEBOOL        __fastcall Add(double entity);
  TOLEBOOL        __fastcall AddAt(double entity, long index);
  TOLEBOOL        __fastcall AddBefore(double entity, double base);
  TOLEBOOL        __fastcall DetachByIndex(long index);
  TOLEBOOL        __fastcall DetachByBody(double entity);
  TOLEBOOL        __fastcall SetByIndex(double entity, long index);

};
typedef ksNurbsKnotCollectionDispT<ksNurbsKnotCollection> ksNurbsKnotCollectionDisp;

// *********************************************************************//
// DispIntf:  ksNurbsPoint3dCollCollection
// Flags:     (4096) Dispatchable
// GUID:      {84AF9C81-1795-4631-B58A-101732262E75}
// *********************************************************************//
template<class T>
class ksNurbsPoint3dCollCollectionDispT : public TAutoDriver<ksNurbsPoint3dCollCollection>
{
public:
  ksNurbsPoint3dCollCollectionDispT(){}

  ksNurbsPoint3dCollCollectionDispT(ksNurbsPoint3dCollCollection *pintf)
  {
    TAutoDriver<ksNurbsPoint3dCollCollection>::Bind(pintf, false);
  }

  ksNurbsPoint3dCollCollectionDispT(ksNurbsPoint3dCollCollectionPtr pintf)
  {
    TAutoDriver<ksNurbsPoint3dCollCollection>::Bind(pintf, true);
  }

  ksNurbsPoint3dCollCollectionDispT& operator=(ksNurbsPoint3dCollCollection *pintf)
  {
    TAutoDriver<ksNurbsPoint3dCollCollection>::Bind(pintf, false);
    return *this;
  }

  ksNurbsPoint3dCollCollectionDispT& operator=(ksNurbsPoint3dCollCollectionPtr pintf)
  {
    TAutoDriver<ksNurbsPoint3dCollCollection>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_NurbsPoint3dCollCollection));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_NurbsPoint3dCollCollection);
  }

  TOLEBOOL        __fastcall refresh();
  long            __fastcall GetCount();
  LPDISPATCH      __fastcall First();
  LPDISPATCH      __fastcall Last();
  LPDISPATCH      __fastcall Next();
  LPDISPATCH      __fastcall Prev();
  LPDISPATCH      __fastcall GetByIndex(long index);
  TOLEBOOL        __fastcall Clear();
  TOLEBOOL        __fastcall Add(LPDISPATCH entity);
  TOLEBOOL        __fastcall AddAt(LPDISPATCH entity, long index);
  TOLEBOOL        __fastcall AddBefore(LPDISPATCH entity, LPDISPATCH base);
  TOLEBOOL        __fastcall DetachByIndex(long index);
  TOLEBOOL        __fastcall DetachByBody(LPDISPATCH entity);
  TOLEBOOL        __fastcall SetByIndex(LPDISPATCH entity, long index);
  long            __fastcall FindIt(LPDISPATCH entity);

};
typedef ksNurbsPoint3dCollCollectionDispT<ksNurbsPoint3dCollCollection> ksNurbsPoint3dCollCollectionDisp;

// *********************************************************************//
// DispIntf:  ksNurbsPoint3dCollection
// Flags:     (4096) Dispatchable
// GUID:      {3AD5E519-74E2-4D3B-B6A3-B1E81F1006F1}
// *********************************************************************//
template<class T>
class ksNurbsPoint3dCollectionDispT : public TAutoDriver<ksNurbsPoint3dCollection>
{
public:
  ksNurbsPoint3dCollectionDispT(){}

  ksNurbsPoint3dCollectionDispT(ksNurbsPoint3dCollection *pintf)
  {
    TAutoDriver<ksNurbsPoint3dCollection>::Bind(pintf, false);
  }

  ksNurbsPoint3dCollectionDispT(ksNurbsPoint3dCollectionPtr pintf)
  {
    TAutoDriver<ksNurbsPoint3dCollection>::Bind(pintf, true);
  }

  ksNurbsPoint3dCollectionDispT& operator=(ksNurbsPoint3dCollection *pintf)
  {
    TAutoDriver<ksNurbsPoint3dCollection>::Bind(pintf, false);
    return *this;
  }

  ksNurbsPoint3dCollectionDispT& operator=(ksNurbsPoint3dCollectionPtr pintf)
  {
    TAutoDriver<ksNurbsPoint3dCollection>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_NurbsPoint3dCollection));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_NurbsPoint3dCollection);
  }

  TOLEBOOL        __fastcall refresh();
  long            __fastcall GetCount();
  LPDISPATCH      __fastcall First();
  LPDISPATCH      __fastcall Last();
  LPDISPATCH      __fastcall Next();
  LPDISPATCH      __fastcall Prev();
  LPDISPATCH      __fastcall GetByIndex(long index);
  TOLEBOOL        __fastcall Clear();
  TOLEBOOL        __fastcall Add(LPDISPATCH entity);
  TOLEBOOL        __fastcall AddAt(LPDISPATCH entity, long index);
  TOLEBOOL        __fastcall AddBefore(LPDISPATCH entity, LPDISPATCH base);
  TOLEBOOL        __fastcall DetachByIndex(long index);
  TOLEBOOL        __fastcall DetachByBody(LPDISPATCH entity);
  TOLEBOOL        __fastcall SetByIndex(LPDISPATCH entity, long index);
  long            __fastcall FindIt(LPDISPATCH entity);

};
typedef ksNurbsPoint3dCollectionDispT<ksNurbsPoint3dCollection> ksNurbsPoint3dCollectionDisp;

// *********************************************************************//
// DispIntf:  ksViewProjection
// Flags:     (4096) Dispatchable
// GUID:      {BF65B990-C2DC-4A12-9EB7-3E868608AF47}
// *********************************************************************//
template<class T>
class ksViewProjectionDispT : public TAutoDriver<ksViewProjection>
{
public:
  ksViewProjectionDispT(){}

  ksViewProjectionDispT(ksViewProjection *pintf)
  {
    TAutoDriver<ksViewProjection>::Bind(pintf, false);
  }

  ksViewProjectionDispT(ksViewProjectionPtr pintf)
  {
    TAutoDriver<ksViewProjection>::Bind(pintf, true);
  }

  ksViewProjectionDispT& operator=(ksViewProjection *pintf)
  {
    TAutoDriver<ksViewProjection>::Bind(pintf, false);
    return *this;
  }

  ksViewProjectionDispT& operator=(ksViewProjectionPtr pintf)
  {
    TAutoDriver<ksViewProjection>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ViewProjection));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ViewProjection);
  }

  void            __fastcall set_name(BSTR Value);
  BSTR            __fastcall get_name();
  void            __fastcall set_scale(double Value);
  double          __fastcall get_scale();
  TOLEBOOL        __fastcall IsCurrent();
  TOLEBOOL        __fastcall SetCurrent();
  LPDISPATCH      __fastcall GetPlacement();
  TOLEBOOL        __fastcall SetPlacement(LPDISPATCH place);
  long            __fastcall get_index();
  TOLEBOOL        __fastcall SetMatrix3D(TVariant Matrix3D);

  __property   BSTR            name = {read = get_name, write = set_name};
  __property   double          scale = {read = get_scale, write = set_scale};
  __property   long            index = {read = get_index};
};
typedef ksViewProjectionDispT<ksViewProjection> ksViewProjectionDisp;

// *********************************************************************//
// DispIntf:  ksViewProjectionCollection
// Flags:     (4096) Dispatchable
// GUID:      {A174F872-C800-409E-9FB2-FF5B89D8B4B8}
// *********************************************************************//
template<class T>
class ksViewProjectionCollectionDispT : public TAutoDriver<ksViewProjectionCollection>
{
public:
  ksViewProjectionCollectionDispT(){}

  ksViewProjectionCollectionDispT(ksViewProjectionCollection *pintf)
  {
    TAutoDriver<ksViewProjectionCollection>::Bind(pintf, false);
  }

  ksViewProjectionCollectionDispT(ksViewProjectionCollectionPtr pintf)
  {
    TAutoDriver<ksViewProjectionCollection>::Bind(pintf, true);
  }

  ksViewProjectionCollectionDispT& operator=(ksViewProjectionCollection *pintf)
  {
    TAutoDriver<ksViewProjectionCollection>::Bind(pintf, false);
    return *this;
  }

  ksViewProjectionCollectionDispT& operator=(ksViewProjectionCollectionPtr pintf)
  {
    TAutoDriver<ksViewProjectionCollection>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ViewProjectionCollection));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ViewProjectionCollection);
  }

  TOLEBOOL        __fastcall refresh();
  long            __fastcall GetCount();
  LPDISPATCH      __fastcall First();
  LPDISPATCH      __fastcall Last();
  LPDISPATCH      __fastcall Next();
  LPDISPATCH      __fastcall Prev();
  LPDISPATCH      __fastcall GetByIndex(long index);
  LPDISPATCH      __fastcall GetByName(BSTR name, TOLEBOOL testFullName/*[def,opt]*/, 
                                       TOLEBOOL testIgnoreCase/*[def,opt]*/);
  long            __fastcall FindIt(LPDISPATCH entity);
  TOLEBOOL        __fastcall Add(LPDISPATCH entity);
  TOLEBOOL        __fastcall DetachByIndex(long index);
  TOLEBOOL        __fastcall DetachByBody(LPDISPATCH entity);
  TOLEBOOL        __fastcall DetachByName(BSTR name);
  LPDISPATCH      __fastcall NewViewProjection();

};
typedef ksViewProjectionCollectionDispT<ksViewProjectionCollection> ksViewProjectionCollectionDisp;

// *********************************************************************//
// DispIntf:  ksSelectionMng
// Flags:     (4096) Dispatchable
// GUID:      {BE41850C-CFC5-40D4-AE49-37AA391BCF4B}
// *********************************************************************//
template<class T>
class ksSelectionMngDispT : public TAutoDriver<ksSelectionMng>
{
public:
  ksSelectionMngDispT(){}

  ksSelectionMngDispT(ksSelectionMng *pintf)
  {
    TAutoDriver<ksSelectionMng>::Bind(pintf, false);
  }

  ksSelectionMngDispT(ksSelectionMngPtr pintf)
  {
    TAutoDriver<ksSelectionMng>::Bind(pintf, true);
  }

  ksSelectionMngDispT& operator=(ksSelectionMng *pintf)
  {
    TAutoDriver<ksSelectionMng>::Bind(pintf, false);
    return *this;
  }

  ksSelectionMngDispT& operator=(ksSelectionMngPtr pintf)
  {
    TAutoDriver<ksSelectionMng>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_SelectionMng));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_SelectionMng);
  }

  TOLEBOOL        __fastcall Select(LPDISPATCH obj);
  TOLEBOOL        __fastcall Unselect(LPDISPATCH obj);
  TOLEBOOL        __fastcall UnselectAll();
  TOLEBOOL        __fastcall IsSelected(LPDISPATCH obj);
  long            __fastcall GetCount();
  LPDISPATCH      __fastcall First();
  LPDISPATCH      __fastcall Last();
  LPDISPATCH      __fastcall Next();
  LPDISPATCH      __fastcall Prev();
  LPDISPATCH      __fastcall GetObjectByIndex(long index);
  long            __fastcall GetObjectType(long index);

};
typedef ksSelectionMngDispT<ksSelectionMng> ksSelectionMngDisp;

// *********************************************************************//
// DispIntf:  ksChooseMng
// Flags:     (4096) Dispatchable
// GUID:      {8F2AA755-D9D1-42A0-97BF-C92548CE7232}
// *********************************************************************//
template<class T>
class ksChooseMngDispT : public TAutoDriver<ksChooseMng>
{
public:
  ksChooseMngDispT(){}

  ksChooseMngDispT(ksChooseMng *pintf)
  {
    TAutoDriver<ksChooseMng>::Bind(pintf, false);
  }

  ksChooseMngDispT(ksChooseMngPtr pintf)
  {
    TAutoDriver<ksChooseMng>::Bind(pintf, true);
  }

  ksChooseMngDispT& operator=(ksChooseMng *pintf)
  {
    TAutoDriver<ksChooseMng>::Bind(pintf, false);
    return *this;
  }

  ksChooseMngDispT& operator=(ksChooseMngPtr pintf)
  {
    TAutoDriver<ksChooseMng>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ChooseMng));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ChooseMng);
  }

  TOLEBOOL        __fastcall Choose(LPDISPATCH obj);
  TOLEBOOL        __fastcall UnChoose(LPDISPATCH obj);
  TOLEBOOL        __fastcall UnChooseAll();
  TOLEBOOL        __fastcall IsChoosen(LPDISPATCH obj);
  long            __fastcall GetCount();
  LPDISPATCH      __fastcall First();
  LPDISPATCH      __fastcall Last();
  LPDISPATCH      __fastcall Next();
  LPDISPATCH      __fastcall Prev();
  LPDISPATCH      __fastcall GetObjectByIndex(long index);
  long            __fastcall GetObjectType(long index);

};
typedef ksChooseMngDispT<ksChooseMng> ksChooseMngDisp;

// *********************************************************************//
// DispIntf:  ksArc3dParam
// Flags:     (4096) Dispatchable
// GUID:      {7DCBCC76-5041-4C1E-9B33-12B1352D6D57}
// *********************************************************************//
template<class T>
class ksArc3dParamDispT : public TAutoDriver<ksArc3dParam>
{
public:
  ksArc3dParamDispT(){}

  ksArc3dParamDispT(ksArc3dParam *pintf)
  {
    TAutoDriver<ksArc3dParam>::Bind(pintf, false);
  }

  ksArc3dParamDispT(ksArc3dParamPtr pintf)
  {
    TAutoDriver<ksArc3dParam>::Bind(pintf, true);
  }

  ksArc3dParamDispT& operator=(ksArc3dParam *pintf)
  {
    TAutoDriver<ksArc3dParam>::Bind(pintf, false);
    return *this;
  }

  ksArc3dParamDispT& operator=(ksArc3dParamPtr pintf)
  {
    TAutoDriver<ksArc3dParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Arc3dParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Arc3dParam);
  }

  LPDISPATCH      __fastcall GetPlacement();
  double          __fastcall get_radius();
  double          __fastcall get_angle();

  __property   double          radius = {read = get_radius};
  __property   double          angle = {read = get_angle};
};
typedef ksArc3dParamDispT<ksArc3dParam> ksArc3dParamDisp;

// *********************************************************************//
// DispIntf:  ksTreeNodeParam
// Flags:     (4096) Dispatchable
// GUID:      {9F8DE1DC-1268-4785-9217-1B0DD59B85FA}
// *********************************************************************//
template<class T>
class ksTreeNodeParamDispT : public TAutoDriver<ksTreeNodeParam>
{
public:
  ksTreeNodeParamDispT(){}

  ksTreeNodeParamDispT(ksTreeNodeParam *pintf)
  {
    TAutoDriver<ksTreeNodeParam>::Bind(pintf, false);
  }

  ksTreeNodeParamDispT(ksTreeNodeParamPtr pintf)
  {
    TAutoDriver<ksTreeNodeParam>::Bind(pintf, true);
  }

  ksTreeNodeParamDispT& operator=(ksTreeNodeParam *pintf)
  {
    TAutoDriver<ksTreeNodeParam>::Bind(pintf, false);
    return *this;
  }

  ksTreeNodeParamDispT& operator=(ksTreeNodeParamPtr pintf)
  {
    TAutoDriver<ksTreeNodeParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_TreeNodeParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_TreeNodeParam);
  }

  TOLEBOOL        __fastcall Init();
  long            __fastcall get_type();
  BSTR            __fastcall get_name();
  LPDISPATCH      __fastcall GetComment();
  LPDISPATCH      __fastcall GetNodes();

  __property   long            type = {read = get_type};
  __property   BSTR            name = {read = get_name};
};
typedef ksTreeNodeParamDispT<ksTreeNodeParam> ksTreeNodeParamDisp;

// *********************************************************************//
// DispIntf:  ksAssociationViewParam
// Flags:     (4096) Dispatchable
// GUID:      {C81EB1DA-BCB0-491A-8D22-923BF817D572}
// *********************************************************************//
template<class T>
class ksAssociationViewParamDispT : public TAutoDriver<ksAssociationViewParam>
{
public:
  ksAssociationViewParamDispT(){}

  ksAssociationViewParamDispT(ksAssociationViewParam *pintf)
  {
    TAutoDriver<ksAssociationViewParam>::Bind(pintf, false);
  }

  ksAssociationViewParamDispT(ksAssociationViewParamPtr pintf)
  {
    TAutoDriver<ksAssociationViewParam>::Bind(pintf, true);
  }

  ksAssociationViewParamDispT& operator=(ksAssociationViewParam *pintf)
  {
    TAutoDriver<ksAssociationViewParam>::Bind(pintf, false);
    return *this;
  }

  ksAssociationViewParamDispT& operator=(ksAssociationViewParamPtr pintf)
  {
    TAutoDriver<ksAssociationViewParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_AssociationViewParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_AssociationViewParam);
  }

  void            __fastcall set_fileName(BSTR Value);
  BSTR            __fastcall get_fileName();
  void            __fastcall set_projectionName(BSTR Value);
  BSTR            __fastcall get_projectionName();
  void            __fastcall set_projectionLink(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_projectionLink();
  void            __fastcall set_disassembly(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_disassembly();
  void            __fastcall set_visibleLinesStyle(long Value);
  long            __fastcall get_visibleLinesStyle();
  void            __fastcall set_hiddenLinesStyle(long Value);
  long            __fastcall get_hiddenLinesStyle();
  void            __fastcall set_tangentEdgesStyle(long Value);
  long            __fastcall get_tangentEdgesStyle();
  void            __fastcall set_hiddenLinesShow(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_hiddenLinesShow();
  void            __fastcall set_tangentEdgesShow(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_tangentEdgesShow();
  void            __fastcall set_projBodies(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_projBodies();
  void            __fastcall set_projSurfaces(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_projSurfaces();
  void            __fastcall set_projThreads(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_projThreads();
  void            __fastcall set_section(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_section();
  void            __fastcall set_sameHatch(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_sameHatch();
  TOLEBOOL        __fastcall Init();
  LPDISPATCH      __fastcall GetViewParam();
  short           __fastcall get_viewType();
  LPDISPATCH      __fastcall GetHatchParam();
  TOLEBOOL        __fastcall SetDimensionLayoutScaling(TOLEBOOL scaling);

  __property   BSTR            fileName = {read = get_fileName, write = set_fileName};
  __property   BSTR            projectionName = {read = get_projectionName, write = set_projectionName};
  __property   TOLEBOOL        projectionLink = {read = get_projectionLink, write = set_projectionLink};
  __property   TOLEBOOL        disassembly = {read = get_disassembly, write = set_disassembly};
  __property   long            visibleLinesStyle = {read = get_visibleLinesStyle, write = set_visibleLinesStyle};
  __property   long            hiddenLinesStyle = {read = get_hiddenLinesStyle, write = set_hiddenLinesStyle};
  __property   long            tangentEdgesStyle = {read = get_tangentEdgesStyle, write = set_tangentEdgesStyle};
  __property   TOLEBOOL        hiddenLinesShow = {read = get_hiddenLinesShow, write = set_hiddenLinesShow};
  __property   TOLEBOOL        tangentEdgesShow = {read = get_tangentEdgesShow, write = set_tangentEdgesShow};
  __property   TOLEBOOL        projBodies = {read = get_projBodies, write = set_projBodies};
  __property   TOLEBOOL        projSurfaces = {read = get_projSurfaces, write = set_projSurfaces};
  __property   TOLEBOOL        projThreads = {read = get_projThreads, write = set_projThreads};
  __property   TOLEBOOL        section = {read = get_section, write = set_section};
  __property   TOLEBOOL        sameHatch = {read = get_sameHatch, write = set_sameHatch};
  __property   short           viewType = {read = get_viewType};
};
typedef ksAssociationViewParamDispT<ksAssociationViewParam> ksAssociationViewParamDisp;

// *********************************************************************//
// DispIntf:  ksViewColorParam
// Flags:     (4096) Dispatchable
// GUID:      {5A42B962-8F78-4557-B17A-1B871F8DBDB5}
// *********************************************************************//
template<class T>
class ksViewColorParamDispT : public TAutoDriver<ksViewColorParam>
{
public:
  ksViewColorParamDispT(){}

  ksViewColorParamDispT(ksViewColorParam *pintf)
  {
    TAutoDriver<ksViewColorParam>::Bind(pintf, false);
  }

  ksViewColorParamDispT(ksViewColorParamPtr pintf)
  {
    TAutoDriver<ksViewColorParam>::Bind(pintf, true);
  }

  ksViewColorParamDispT& operator=(ksViewColorParam *pintf)
  {
    TAutoDriver<ksViewColorParam>::Bind(pintf, false);
    return *this;
  }

  ksViewColorParamDispT& operator=(ksViewColorParamPtr pintf)
  {
    TAutoDriver<ksViewColorParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ViewColorParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ViewColorParam);
  }

  void            __fastcall set_color(long Value);
  long            __fastcall get_color();
  void            __fastcall set_useGradient(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_useGradient();
  void            __fastcall set_topColor(long Value);
  long            __fastcall get_topColor();
  void            __fastcall set_bottomColor(long Value);
  long            __fastcall get_bottomColor();
  TOLEBOOL        __fastcall Init();

  __property   long            color = {read = get_color, write = set_color};
  __property   TOLEBOOL        useGradient = {read = get_useGradient, write = set_useGradient};
  __property   long            topColor = {read = get_topColor, write = set_topColor};
  __property   long            bottomColor = {read = get_bottomColor, write = set_bottomColor};
};
typedef ksViewColorParamDispT<ksViewColorParam> ksViewColorParamDisp;

// *********************************************************************//
// DispIntf:  ksAxisLineParam
// Flags:     (4096) Dispatchable
// GUID:      {AFE694D7-C1E5-468F-99B0-FE4C60C49899}
// *********************************************************************//
template<class T>
class ksAxisLineParamDispT : public TAutoDriver<ksAxisLineParam>
{
public:
  ksAxisLineParamDispT(){}

  ksAxisLineParamDispT(ksAxisLineParam *pintf)
  {
    TAutoDriver<ksAxisLineParam>::Bind(pintf, false);
  }

  ksAxisLineParamDispT(ksAxisLineParamPtr pintf)
  {
    TAutoDriver<ksAxisLineParam>::Bind(pintf, true);
  }

  ksAxisLineParamDispT& operator=(ksAxisLineParam *pintf)
  {
    TAutoDriver<ksAxisLineParam>::Bind(pintf, false);
    return *this;
  }

  ksAxisLineParamDispT& operator=(ksAxisLineParamPtr pintf)
  {
    TAutoDriver<ksAxisLineParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_AxisLineParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_AxisLineParam);
  }

  TOLEBOOL        __fastcall Init();
  LPDISPATCH      __fastcall GetBegPoint();
  LPDISPATCH      __fastcall GetEndPoint();

};
typedef ksAxisLineParamDispT<ksAxisLineParam> ksAxisLineParamDisp;

// *********************************************************************//
// DispIntf:  ksTextDocumentParam
// Flags:     (4096) Dispatchable
// GUID:      {33706D56-D085-4840-833B-435AEB00BE2A}
// *********************************************************************//
template<class T>
class ksTextDocumentParamDispT : public TAutoDriver<ksTextDocumentParam>
{
public:
  ksTextDocumentParamDispT(){}

  ksTextDocumentParamDispT(ksTextDocumentParam *pintf)
  {
    TAutoDriver<ksTextDocumentParam>::Bind(pintf, false);
  }

  ksTextDocumentParamDispT(ksTextDocumentParamPtr pintf)
  {
    TAutoDriver<ksTextDocumentParam>::Bind(pintf, true);
  }

  ksTextDocumentParamDispT& operator=(ksTextDocumentParam *pintf)
  {
    TAutoDriver<ksTextDocumentParam>::Bind(pintf, false);
    return *this;
  }

  ksTextDocumentParamDispT& operator=(ksTextDocumentParamPtr pintf)
  {
    TAutoDriver<ksTextDocumentParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_TextDocumentParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_TextDocumentParam);
  }

  void            __fastcall set_fileName(BSTR Value);
  BSTR            __fastcall get_fileName();
  void            __fastcall set_comment(BSTR Value);
  BSTR            __fastcall get_comment();
  void            __fastcall set_author(BSTR Value);
  BSTR            __fastcall get_author();
  void            __fastcall set_type(short Value);
  short           __fastcall get_type();
  void            __fastcall set_regime(short Value);
  short           __fastcall get_regime();
  TOLEBOOL        __fastcall Init();
  LPDISPATCH      __fastcall GetFirstSheet();
  LPDISPATCH      __fastcall GetEvenSheet();
  LPDISPATCH      __fastcall GetOddSheet();
  LPDISPATCH      __fastcall GetArrTitleSheet();
  LPDISPATCH      __fastcall GetArrTailSheet();
  LPDISPATCH      __fastcall GetSheetParam();

  __property   BSTR            fileName = {read = get_fileName, write = set_fileName};
  __property   BSTR            comment = {read = get_comment, write = set_comment};
  __property   BSTR            author = {read = get_author, write = set_author};
  __property   short           type = {read = get_type, write = set_type};
  __property   short           regime = {read = get_regime, write = set_regime};
};
typedef ksTextDocumentParamDispT<ksTextDocumentParam> ksTextDocumentParamDisp;

// *********************************************************************//
// DispIntf:  ksRemoteElementParam
// Flags:     (4096) Dispatchable
// GUID:      {25076616-4949-455E-A45C-1B801884D825}
// *********************************************************************//
template<class T>
class ksRemoteElementParamDispT : public TAutoDriver<ksRemoteElementParam>
{
public:
  ksRemoteElementParamDispT(){}

  ksRemoteElementParamDispT(ksRemoteElementParam *pintf)
  {
    TAutoDriver<ksRemoteElementParam>::Bind(pintf, false);
  }

  ksRemoteElementParamDispT(ksRemoteElementParamPtr pintf)
  {
    TAutoDriver<ksRemoteElementParam>::Bind(pintf, true);
  }

  ksRemoteElementParamDispT& operator=(ksRemoteElementParam *pintf)
  {
    TAutoDriver<ksRemoteElementParam>::Bind(pintf, false);
    return *this;
  }

  ksRemoteElementParamDispT& operator=(ksRemoteElementParamPtr pintf)
  {
    TAutoDriver<ksRemoteElementParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_RemoteElementParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_RemoteElementParam);
  }

  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  void            __fastcall set_signType(long Value);
  long            __fastcall get_signType();
  void            __fastcall set_x(double Value);
  double          __fastcall get_x();
  void            __fastcall set_y(double Value);
  double          __fastcall get_y();
  void            __fastcall set_width(double Value);
  double          __fastcall get_width();
  void            __fastcall set_height(double Value);
  double          __fastcall get_height();
  void            __fastcall set_radius(double Value);
  double          __fastcall get_radius();
  void            __fastcall set_smooth(double Value);
  double          __fastcall get_smooth();
  void            __fastcall set_shelfX(double Value);
  double          __fastcall get_shelfX();
  void            __fastcall set_shelfY(double Value);
  double          __fastcall get_shelfY();
  void            __fastcall set_shelfDir(short Value);
  short           __fastcall get_shelfDir();
  TOLEBOOL        __fastcall Init(long style);
  LPDISPATCH      __fastcall GetpText();
  TOLEBOOL        __fastcall SetpText(LPDISPATCH pText);

  __property   long            style = {read = get_style, write = set_style};
  __property   long            signType = {read = get_signType, write = set_signType};
  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   double          width = {read = get_width, write = set_width};
  __property   double          height = {read = get_height, write = set_height};
  __property   double          radius = {read = get_radius, write = set_radius};
  __property   double          smooth = {read = get_smooth, write = set_smooth};
  __property   double          shelfX = {read = get_shelfX, write = set_shelfX};
  __property   double          shelfY = {read = get_shelfY, write = set_shelfY};
  __property   short           shelfDir = {read = get_shelfDir, write = set_shelfDir};
};
typedef ksRemoteElementParamDispT<ksRemoteElementParam> ksRemoteElementParamDisp;

// *********************************************************************//
// DispIntf:  ksDeletedCopyCollection
// Flags:     (4096) Dispatchable
// GUID:      {82F60797-D69C-4EB4-9F1A-24D625D5EAFA}
// *********************************************************************//
template<class T>
class ksDeletedCopyCollectionDispT : public TAutoDriver<ksDeletedCopyCollection>
{
public:
  ksDeletedCopyCollectionDispT(){}

  ksDeletedCopyCollectionDispT(ksDeletedCopyCollection *pintf)
  {
    TAutoDriver<ksDeletedCopyCollection>::Bind(pintf, false);
  }

  ksDeletedCopyCollectionDispT(ksDeletedCopyCollectionPtr pintf)
  {
    TAutoDriver<ksDeletedCopyCollection>::Bind(pintf, true);
  }

  ksDeletedCopyCollectionDispT& operator=(ksDeletedCopyCollection *pintf)
  {
    TAutoDriver<ksDeletedCopyCollection>::Bind(pintf, false);
    return *this;
  }

  ksDeletedCopyCollectionDispT& operator=(ksDeletedCopyCollectionPtr pintf)
  {
    TAutoDriver<ksDeletedCopyCollection>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_DeletedCopyCollection));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_DeletedCopyCollection);
  }

  TOLEBOOL        __fastcall refresh();
  long            __fastcall GetCount();
  TOLEBOOL        __fastcall First(long* index1, long* index2);
  TOLEBOOL        __fastcall Last(long* index1, long* index2);
  TOLEBOOL        __fastcall Next(long* index1, long* index2);
  TOLEBOOL        __fastcall Prev(long* index1, long* index2);
  TOLEBOOL        __fastcall GetByIndex(long index, long* index1, long* index2);
  TOLEBOOL        __fastcall Clear();
  TOLEBOOL        __fastcall Add(long index1, long index2);
  TOLEBOOL        __fastcall AddAt(long index1, long index2, long index);
  TOLEBOOL        __fastcall DetachByIndex(long index);
  TOLEBOOL        __fastcall DetachByBody(long index1, long index2);
  TOLEBOOL        __fastcall SetByIndex(long index1, long index2, long index);
  long            __fastcall FindIt(long index1, long index2);

};
typedef ksDeletedCopyCollectionDispT<ksDeletedCopyCollection> ksDeletedCopyCollectionDisp;

// *********************************************************************//
// DispIntf:  ksCopyObjectParam
// Flags:     (4096) Dispatchable
// GUID:      {AACAD820-7790-46EB-B17F-06AE42215ED7}
// *********************************************************************//
template<class T>
class ksCopyObjectParamDispT : public TAutoDriver<ksCopyObjectParam>
{
public:
  ksCopyObjectParamDispT(){}

  ksCopyObjectParamDispT(ksCopyObjectParam *pintf)
  {
    TAutoDriver<ksCopyObjectParam>::Bind(pintf, false);
  }

  ksCopyObjectParamDispT(ksCopyObjectParamPtr pintf)
  {
    TAutoDriver<ksCopyObjectParam>::Bind(pintf, true);
  }

  ksCopyObjectParamDispT& operator=(ksCopyObjectParam *pintf)
  {
    TAutoDriver<ksCopyObjectParam>::Bind(pintf, false);
    return *this;
  }

  ksCopyObjectParamDispT& operator=(ksCopyObjectParamPtr pintf)
  {
    TAutoDriver<ksCopyObjectParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_CopyObjectParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_CopyObjectParam);
  }

  void            __fastcall set_objRef(long Value);
  long            __fastcall get_objRef();
  void            __fastcall set_xOld(double Value);
  double          __fastcall get_xOld();
  void            __fastcall set_yOld(double Value);
  double          __fastcall get_yOld();
  void            __fastcall set_xNew(double Value);
  double          __fastcall get_xNew();
  void            __fastcall set_yNew(double Value);
  double          __fastcall get_yNew();
  void            __fastcall set_scale(double Value);
  double          __fastcall get_scale();
  void            __fastcall set_angle(double Value);
  double          __fastcall get_angle();
  void            __fastcall set_attrCopy(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_attrCopy();
  void            __fastcall set_dimLineScale(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_dimLineScale();
  void            __fastcall set_spcObjCopy(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_spcObjCopy();
  TOLEBOOL        __fastcall Init();

  __property   long            objRef = {read = get_objRef, write = set_objRef};
  __property   double          xOld = {read = get_xOld, write = set_xOld};
  __property   double          yOld = {read = get_yOld, write = set_yOld};
  __property   double          xNew = {read = get_xNew, write = set_xNew};
  __property   double          yNew = {read = get_yNew, write = set_yNew};
  __property   double          scale = {read = get_scale, write = set_scale};
  __property   double          angle = {read = get_angle, write = set_angle};
  __property   TOLEBOOL        attrCopy = {read = get_attrCopy, write = set_attrCopy};
  __property   TOLEBOOL        dimLineScale = {read = get_dimLineScale, write = set_dimLineScale};
  __property   TOLEBOOL        spcObjCopy = {read = get_spcObjCopy, write = set_spcObjCopy};
};
typedef ksCopyObjectParamDispT<ksCopyObjectParam> ksCopyObjectParamDisp;

// *********************************************************************//
// DispIntf:  ksThreadDefinition
// Flags:     (4096) Dispatchable
// GUID:      {5DDB6B14-6F3D-431F-B62F-C5FCCAFC3632}
// *********************************************************************//
template<class T>
class ksThreadDefinitionDispT : public TAutoDriver<ksThreadDefinition>
{
public:
  ksThreadDefinitionDispT(){}

  ksThreadDefinitionDispT(ksThreadDefinition *pintf)
  {
    TAutoDriver<ksThreadDefinition>::Bind(pintf, false);
  }

  ksThreadDefinitionDispT(ksThreadDefinitionPtr pintf)
  {
    TAutoDriver<ksThreadDefinition>::Bind(pintf, true);
  }

  ksThreadDefinitionDispT& operator=(ksThreadDefinition *pintf)
  {
    TAutoDriver<ksThreadDefinition>::Bind(pintf, false);
    return *this;
  }

  ksThreadDefinitionDispT& operator=(ksThreadDefinitionPtr pintf)
  {
    TAutoDriver<ksThreadDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ThreadDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ThreadDefinition);
  }

  void            __fastcall set_dr(double Value);
  double          __fastcall get_dr();
  void            __fastcall set_length(double Value);
  double          __fastcall get_length();
  void            __fastcall set_p(double Value);
  double          __fastcall get_p();
  void            __fastcall set_autoDefinDr(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_autoDefinDr();
  void            __fastcall set_allLength(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_allLength();
  void            __fastcall set_faceValue(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_faceValue();
  TOLEBOOL        __fastcall get_outside();
  LPDISPATCH      __fastcall GetBaseObject();
  TOLEBOOL        __fastcall SetBaseObject(LPDISPATCH obj);
  LPDISPATCH      __fastcall GetFaceBegin();
  TOLEBOOL        __fastcall SetFaceBegin(LPDISPATCH face);
  LPDISPATCH      __fastcall GetFaceEnd();
  TOLEBOOL        __fastcall SetFaceEnd(LPDISPATCH face);

  __property   double          dr = {read = get_dr, write = set_dr};
  __property   double          length = {read = get_length, write = set_length};
  __property   double          p = {read = get_p, write = set_p};
  __property   TOLEBOOL        autoDefinDr = {read = get_autoDefinDr, write = set_autoDefinDr};
  __property   TOLEBOOL        allLength = {read = get_allLength, write = set_allLength};
  __property   TOLEBOOL        faceValue = {read = get_faceValue, write = set_faceValue};
  __property   TOLEBOOL        outside = {read = get_outside};
};
typedef ksThreadDefinitionDispT<ksThreadDefinition> ksThreadDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksOverlapObjectOptions
// Flags:     (4096) Dispatchable
// GUID:      {F78E6B71-BEF3-4A4D-AE50-FE96426F6FD1}
// *********************************************************************//
template<class T>
class ksOverlapObjectOptionsDispT : public TAutoDriver<ksOverlapObjectOptions>
{
public:
  ksOverlapObjectOptionsDispT(){}

  ksOverlapObjectOptionsDispT(ksOverlapObjectOptions *pintf)
  {
    TAutoDriver<ksOverlapObjectOptions>::Bind(pintf, false);
  }

  ksOverlapObjectOptionsDispT(ksOverlapObjectOptionsPtr pintf)
  {
    TAutoDriver<ksOverlapObjectOptions>::Bind(pintf, true);
  }

  ksOverlapObjectOptionsDispT& operator=(ksOverlapObjectOptions *pintf)
  {
    TAutoDriver<ksOverlapObjectOptions>::Bind(pintf, false);
    return *this;
  }

  ksOverlapObjectOptionsDispT& operator=(ksOverlapObjectOptionsPtr pintf)
  {
    TAutoDriver<ksOverlapObjectOptions>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_OverlapObjectOptions));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_OverlapObjectOptions);
  }

  void            __fastcall set_overlap(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_overlap();
  void            __fastcall set_gap(double Value);
  double          __fastcall get_gap();
  TOLEBOOL        __fastcall Init();

  __property   TOLEBOOL        overlap = {read = get_overlap, write = set_overlap};
  __property   double          gap = {read = get_gap, write = set_gap};
};
typedef ksOverlapObjectOptionsDispT<ksOverlapObjectOptions> ksOverlapObjectOptionsDisp;

// *********************************************************************//
// DispIntf:  ksObjectsFilter3D
// Flags:     (4096) Dispatchable
// GUID:      {ABBA6CE0-CB4C-4A32-98B4-B639352C75BA}
// *********************************************************************//
template<class T>
class ksObjectsFilter3DDispT : public TAutoDriver<ksObjectsFilter3D>
{
public:
  ksObjectsFilter3DDispT(){}

  ksObjectsFilter3DDispT(ksObjectsFilter3D *pintf)
  {
    TAutoDriver<ksObjectsFilter3D>::Bind(pintf, false);
  }

  ksObjectsFilter3DDispT(ksObjectsFilter3DPtr pintf)
  {
    TAutoDriver<ksObjectsFilter3D>::Bind(pintf, true);
  }

  ksObjectsFilter3DDispT& operator=(ksObjectsFilter3D *pintf)
  {
    TAutoDriver<ksObjectsFilter3D>::Bind(pintf, false);
    return *this;
  }

  ksObjectsFilter3DDispT& operator=(ksObjectsFilter3DPtr pintf)
  {
    TAutoDriver<ksObjectsFilter3D>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ObjectsFilter3D));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ObjectsFilter3D);
  }

  void            __fastcall set_filterAll(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_filterAll();
  void            __fastcall set_filterFaces(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_filterFaces();
  void            __fastcall set_filterEdges(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_filterEdges();
  void            __fastcall set_filterVertexs(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_filterVertexs();
  void            __fastcall set_filterCPlanes(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_filterCPlanes();
  void            __fastcall set_filterCAxis(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_filterCAxis();

  __property   TOLEBOOL        filterAll = {read = get_filterAll, write = set_filterAll};
  __property   TOLEBOOL        filterFaces = {read = get_filterFaces, write = set_filterFaces};
  __property   TOLEBOOL        filterEdges = {read = get_filterEdges, write = set_filterEdges};
  __property   TOLEBOOL        filterVertexs = {read = get_filterVertexs, write = set_filterVertexs};
  __property   TOLEBOOL        filterCPlanes = {read = get_filterCPlanes, write = set_filterCPlanes};
  __property   TOLEBOOL        filterCAxis = {read = get_filterCAxis, write = set_filterCAxis};
};
typedef ksObjectsFilter3DDispT<ksObjectsFilter3D> ksObjectsFilter3DDisp;

// *********************************************************************//
// DispIntf:  ksParametrizationParam
// Flags:     (4096) Dispatchable
// GUID:      {ABBA6CE0-CB4C-4A32-98B4-B639352C75BB}
// *********************************************************************//
template<class T>
class ksParametrizationParamDispT : public TAutoDriver<ksParametrizationParam>
{
public:
  ksParametrizationParamDispT(){}

  ksParametrizationParamDispT(ksParametrizationParam *pintf)
  {
    TAutoDriver<ksParametrizationParam>::Bind(pintf, false);
  }

  ksParametrizationParamDispT(ksParametrizationParamPtr pintf)
  {
    TAutoDriver<ksParametrizationParam>::Bind(pintf, true);
  }

  ksParametrizationParamDispT& operator=(ksParametrizationParam *pintf)
  {
    TAutoDriver<ksParametrizationParam>::Bind(pintf, false);
    return *this;
  }

  ksParametrizationParamDispT& operator=(ksParametrizationParamPtr pintf)
  {
    TAutoDriver<ksParametrizationParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ParametrizationParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ParametrizationParam);
  }

  void            __fastcall set_nearestPoints(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_nearestPoints();
  void            __fastcall set_pointsLimit(double Value);
  double          __fastcall get_pointsLimit();
  void            __fastcall set_horizontal(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_horizontal();
  void            __fastcall set_vertical(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_vertical();
  void            __fastcall set_parallel(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_parallel();
  void            __fastcall set_perpendicular(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_perpendicular();
  void            __fastcall set_angleLimit(double Value);
  double          __fastcall get_angleLimit();
  TOLEBOOL        __fastcall Init();

  __property   TOLEBOOL        nearestPoints = {read = get_nearestPoints, write = set_nearestPoints};
  __property   double          pointsLimit = {read = get_pointsLimit, write = set_pointsLimit};
  __property   TOLEBOOL        horizontal = {read = get_horizontal, write = set_horizontal};
  __property   TOLEBOOL        vertical = {read = get_vertical, write = set_vertical};
  __property   TOLEBOOL        parallel = {read = get_parallel, write = set_parallel};
  __property   TOLEBOOL        perpendicular = {read = get_perpendicular, write = set_perpendicular};
  __property   double          angleLimit = {read = get_angleLimit, write = set_angleLimit};
};
typedef ksParametrizationParamDispT<ksParametrizationParam> ksParametrizationParamDisp;

// *********************************************************************//
// DispIntf:  ksMacro3DDefinition
// Flags:     (4096) Dispatchable
// GUID:      {02556461-D088-4F00-AE61-D366082DB9BC}
// *********************************************************************//
template<class T>
class ksMacro3DDefinitionDispT : public TAutoDriver<ksMacro3DDefinition>
{
public:
  ksMacro3DDefinitionDispT(){}

  ksMacro3DDefinitionDispT(ksMacro3DDefinition *pintf)
  {
    TAutoDriver<ksMacro3DDefinition>::Bind(pintf, false);
  }

  ksMacro3DDefinitionDispT(ksMacro3DDefinitionPtr pintf)
  {
    TAutoDriver<ksMacro3DDefinition>::Bind(pintf, true);
  }

  ksMacro3DDefinitionDispT& operator=(ksMacro3DDefinition *pintf)
  {
    TAutoDriver<ksMacro3DDefinition>::Bind(pintf, false);
    return *this;
  }

  ksMacro3DDefinitionDispT& operator=(ksMacro3DDefinitionPtr pintf)
  {
    TAutoDriver<ksMacro3DDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Macro3DDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Macro3DDefinition);
  }

  void            __fastcall set_StaffVisible(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_StaffVisible();
  void            __fastcall set_DoubleClickEditOff(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_DoubleClickEditOff();
  Kompas6api5_tlb::ksFeatureCollectionPtr __fastcall FeatureCollection();
  TOLEBOOL        __fastcall Destroy();
  TOLEBOOL        __fastcall Add(LPDISPATCH obj);
  TOLEBOOL        __fastcall SetUserParam(LPDISPATCH userPars);
  long            __fastcall GetUserParamSize();
  TOLEBOOL        __fastcall GetUserParam(LPDISPATCH userPars);
  TOLEBOOL        __fastcall SetObject(long index, LPDISPATCH obj);
  LPDISPATCH      __fastcall GetObject(long index);
  long            __fastcall GetCountObj();
  TOLEBOOL        __fastcall ClearAllObj();

  __property   TOLEBOOL        StaffVisible = {read = get_StaffVisible, write = set_StaffVisible};
  __property   TOLEBOOL        DoubleClickEditOff = {read = get_DoubleClickEditOff, write = set_DoubleClickEditOff};
};
typedef ksMacro3DDefinitionDispT<ksMacro3DDefinition> ksMacro3DDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksAxisConefaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {97337DAF-B7CD-4FB8-8E18-23F0230E5CBE}
// *********************************************************************//
template<class T>
class ksAxisConefaceDefinitionDispT : public TAutoDriver<ksAxisConefaceDefinition>
{
public:
  ksAxisConefaceDefinitionDispT(){}

  ksAxisConefaceDefinitionDispT(ksAxisConefaceDefinition *pintf)
  {
    TAutoDriver<ksAxisConefaceDefinition>::Bind(pintf, false);
  }

  ksAxisConefaceDefinitionDispT(ksAxisConefaceDefinitionPtr pintf)
  {
    TAutoDriver<ksAxisConefaceDefinition>::Bind(pintf, true);
  }

  ksAxisConefaceDefinitionDispT& operator=(ksAxisConefaceDefinition *pintf)
  {
    TAutoDriver<ksAxisConefaceDefinition>::Bind(pintf, false);
    return *this;
  }

  ksAxisConefaceDefinitionDispT& operator=(ksAxisConefaceDefinitionPtr pintf)
  {
    TAutoDriver<ksAxisConefaceDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_AxisConefaceDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_AxisConefaceDefinition);
  }

  TOLEBOOL        __fastcall SetFace(LPDISPATCH face);
  LPDISPATCH      __fastcall GetFace();
  LPDISPATCH      __fastcall GetCurve3D();

};
typedef ksAxisConefaceDefinitionDispT<ksAxisConefaceDefinition> ksAxisConefaceDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksUnionComponentsDefinition
// Flags:     (4096) Dispatchable
// GUID:      {99797F89-FBA4-4582-812F-226AFB50ED7D}
// *********************************************************************//
template<class T>
class ksUnionComponentsDefinitionDispT : public TAutoDriver<ksUnionComponentsDefinition>
{
public:
  ksUnionComponentsDefinitionDispT(){}

  ksUnionComponentsDefinitionDispT(ksUnionComponentsDefinition *pintf)
  {
    TAutoDriver<ksUnionComponentsDefinition>::Bind(pintf, false);
  }

  ksUnionComponentsDefinitionDispT(ksUnionComponentsDefinitionPtr pintf)
  {
    TAutoDriver<ksUnionComponentsDefinition>::Bind(pintf, true);
  }

  ksUnionComponentsDefinitionDispT& operator=(ksUnionComponentsDefinition *pintf)
  {
    TAutoDriver<ksUnionComponentsDefinition>::Bind(pintf, false);
    return *this;
  }

  ksUnionComponentsDefinitionDispT& operator=(ksUnionComponentsDefinitionPtr pintf)
  {
    TAutoDriver<ksUnionComponentsDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_UnionComponentsDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_UnionComponentsDefinition);
  }

  LPDISPATCH      __fastcall PartArray();

};
typedef ksUnionComponentsDefinitionDispT<ksUnionComponentsDefinition> ksUnionComponentsDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksMoldCavityDefinition
// Flags:     (4096) Dispatchable
// GUID:      {BE5F10F5-B198-49D9-9140-B2B91E060533}
// *********************************************************************//
template<class T>
class ksMoldCavityDefinitionDispT : public TAutoDriver<ksMoldCavityDefinition>
{
public:
  ksMoldCavityDefinitionDispT(){}

  ksMoldCavityDefinitionDispT(ksMoldCavityDefinition *pintf)
  {
    TAutoDriver<ksMoldCavityDefinition>::Bind(pintf, false);
  }

  ksMoldCavityDefinitionDispT(ksMoldCavityDefinitionPtr pintf)
  {
    TAutoDriver<ksMoldCavityDefinition>::Bind(pintf, true);
  }

  ksMoldCavityDefinitionDispT& operator=(ksMoldCavityDefinition *pintf)
  {
    TAutoDriver<ksMoldCavityDefinition>::Bind(pintf, false);
    return *this;
  }

  ksMoldCavityDefinitionDispT& operator=(ksMoldCavityDefinitionPtr pintf)
  {
    TAutoDriver<ksMoldCavityDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_MoldCavityDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_MoldCavityDefinition);
  }

  void            __fastcall set_scale(double Value);
  double          __fastcall get_scale();
  LPDISPATCH      __fastcall PartArray();
  LPDISPATCH      __fastcall GetScaleCentre();
  TOLEBOOL        __fastcall SetScaleCentre(LPDISPATCH vert);

  __property   double          scale = {read = get_scale, write = set_scale};
};
typedef ksMoldCavityDefinitionDispT<ksMoldCavityDefinition> ksMoldCavityDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksCoordinate3dCollection
// Flags:     (4096) Dispatchable
// GUID:      {E4091969-1C4E-4959-8D93-C2421564418B}
// *********************************************************************//
template<class T>
class ksCoordinate3dCollectionDispT : public TAutoDriver<ksCoordinate3dCollection>
{
public:
  ksCoordinate3dCollectionDispT(){}

  ksCoordinate3dCollectionDispT(ksCoordinate3dCollection *pintf)
  {
    TAutoDriver<ksCoordinate3dCollection>::Bind(pintf, false);
  }

  ksCoordinate3dCollectionDispT(ksCoordinate3dCollectionPtr pintf)
  {
    TAutoDriver<ksCoordinate3dCollection>::Bind(pintf, true);
  }

  ksCoordinate3dCollectionDispT& operator=(ksCoordinate3dCollection *pintf)
  {
    TAutoDriver<ksCoordinate3dCollection>::Bind(pintf, false);
    return *this;
  }

  ksCoordinate3dCollectionDispT& operator=(ksCoordinate3dCollectionPtr pintf)
  {
    TAutoDriver<ksCoordinate3dCollection>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_Coordinate3dCollection));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_Coordinate3dCollection);
  }

  long            __fastcall GetCount();
  TOLEBOOL        __fastcall GetByIndex(long index, double* x, double* y, double* z);
  TOLEBOOL        __fastcall GetSafeArray(TVariant* array);

};
typedef ksCoordinate3dCollectionDispT<ksCoordinate3dCollection> ksCoordinate3dCollectionDisp;

// *********************************************************************//
// DispIntf:  ksIntersectionResult
// Flags:     (4096) Dispatchable
// GUID:      {ABC7F8EE-CF07-4AA8-98A1-0DE35DB35B9E}
// *********************************************************************//
template<class T>
class ksIntersectionResultDispT : public TAutoDriver<ksIntersectionResult>
{
public:
  ksIntersectionResultDispT(){}

  ksIntersectionResultDispT(ksIntersectionResult *pintf)
  {
    TAutoDriver<ksIntersectionResult>::Bind(pintf, false);
  }

  ksIntersectionResultDispT(ksIntersectionResultPtr pintf)
  {
    TAutoDriver<ksIntersectionResult>::Bind(pintf, true);
  }

  ksIntersectionResultDispT& operator=(ksIntersectionResult *pintf)
  {
    TAutoDriver<ksIntersectionResult>::Bind(pintf, false);
    return *this;
  }

  ksIntersectionResultDispT& operator=(ksIntersectionResultPtr pintf)
  {
    TAutoDriver<ksIntersectionResult>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_IntersectionResult));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_IntersectionResult);
  }

  long            __fastcall GetCount();
  long            __fastcall GetIntersectionType(long index);

};
typedef ksIntersectionResultDispT<ksIntersectionResult> ksIntersectionResultDisp;

// *********************************************************************//
// DispIntf:  ksPlaneMiddleDefinition
// Flags:     (4096) Dispatchable
// GUID:      {CC5E3539-5B35-46FC-AFE1-19BB0168D52F}
// *********************************************************************//
template<class T>
class ksPlaneMiddleDefinitionDispT : public TAutoDriver<ksPlaneMiddleDefinition>
{
public:
  ksPlaneMiddleDefinitionDispT(){}

  ksPlaneMiddleDefinitionDispT(ksPlaneMiddleDefinition *pintf)
  {
    TAutoDriver<ksPlaneMiddleDefinition>::Bind(pintf, false);
  }

  ksPlaneMiddleDefinitionDispT(ksPlaneMiddleDefinitionPtr pintf)
  {
    TAutoDriver<ksPlaneMiddleDefinition>::Bind(pintf, true);
  }

  ksPlaneMiddleDefinitionDispT& operator=(ksPlaneMiddleDefinition *pintf)
  {
    TAutoDriver<ksPlaneMiddleDefinition>::Bind(pintf, false);
    return *this;
  }

  ksPlaneMiddleDefinitionDispT& operator=(ksPlaneMiddleDefinitionPtr pintf)
  {
    TAutoDriver<ksPlaneMiddleDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_PlaneMiddleDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_PlaneMiddleDefinition);
  }

  void            __fastcall set_position(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_position();
  TOLEBOOL        __fastcall SetObject(long number, LPDISPATCH val);
  LPDISPATCH      __fastcall GetObject(long number);
  LPDISPATCH      __fastcall GetSurface();

  __property   TOLEBOOL        position = {read = get_position, write = set_position};
};
typedef ksPlaneMiddleDefinitionDispT<ksPlaneMiddleDefinition> ksPlaneMiddleDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksControlPointDefinition
// Flags:     (4096) Dispatchable
// GUID:      {BC4C15A4-16E9-4CFA-A33E-CC86BA2FB546}
// *********************************************************************//
template<class T>
class ksControlPointDefinitionDispT : public TAutoDriver<ksControlPointDefinition>
{
public:
  ksControlPointDefinitionDispT(){}

  ksControlPointDefinitionDispT(ksControlPointDefinition *pintf)
  {
    TAutoDriver<ksControlPointDefinition>::Bind(pintf, false);
  }

  ksControlPointDefinitionDispT(ksControlPointDefinitionPtr pintf)
  {
    TAutoDriver<ksControlPointDefinition>::Bind(pintf, true);
  }

  ksControlPointDefinitionDispT& operator=(ksControlPointDefinition *pintf)
  {
    TAutoDriver<ksControlPointDefinition>::Bind(pintf, false);
    return *this;
  }

  ksControlPointDefinitionDispT& operator=(ksControlPointDefinitionPtr pintf)
  {
    TAutoDriver<ksControlPointDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ControlPointDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ControlPointDefinition);
  }

  TOLEBOOL        __fastcall SetVertex(LPDISPATCH val);
  LPDISPATCH      __fastcall GetVertex();
  TOLEBOOL        __fastcall GetPoint(double* x, double* y, double* z);

};
typedef ksControlPointDefinitionDispT<ksControlPointDefinition> ksControlPointDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksConjunctivePointDefinition
// Flags:     (4096) Dispatchable
// GUID:      {177CBAF3-87E6-4376-B6A9-669C0E661BFF}
// *********************************************************************//
template<class T>
class ksConjunctivePointDefinitionDispT : public TAutoDriver<ksConjunctivePointDefinition>
{
public:
  ksConjunctivePointDefinitionDispT(){}

  ksConjunctivePointDefinitionDispT(ksConjunctivePointDefinition *pintf)
  {
    TAutoDriver<ksConjunctivePointDefinition>::Bind(pintf, false);
  }

  ksConjunctivePointDefinitionDispT(ksConjunctivePointDefinitionPtr pintf)
  {
    TAutoDriver<ksConjunctivePointDefinition>::Bind(pintf, true);
  }

  ksConjunctivePointDefinitionDispT& operator=(ksConjunctivePointDefinition *pintf)
  {
    TAutoDriver<ksConjunctivePointDefinition>::Bind(pintf, false);
    return *this;
  }

  ksConjunctivePointDefinitionDispT& operator=(ksConjunctivePointDefinitionPtr pintf)
  {
    TAutoDriver<ksConjunctivePointDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ConjunctivePointDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ConjunctivePointDefinition);
  }

  void            __fastcall set_direction(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_direction();
  TOLEBOOL        __fastcall SetVertex(LPDISPATCH val);
  LPDISPATCH      __fastcall GetVertex();
  TOLEBOOL        __fastcall SetEdge(LPDISPATCH val);
  LPDISPATCH      __fastcall GetEdge();
  TOLEBOOL        __fastcall GetPoint(double* x, double* y, double* z);

  __property   TOLEBOOL        direction = {read = get_direction, write = set_direction};
};
typedef ksConjunctivePointDefinitionDispT<ksConjunctivePointDefinition> ksConjunctivePointDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksChooseBodies
// Flags:     (4096) Dispatchable
// GUID:      {E06B18BF-D2AF-4201-99BE-B7FA9EECF7A8}
// *********************************************************************//
template<class T>
class ksChooseBodiesDispT : public TAutoDriver<ksChooseBodies>
{
public:
  ksChooseBodiesDispT(){}

  ksChooseBodiesDispT(ksChooseBodies *pintf)
  {
    TAutoDriver<ksChooseBodies>::Bind(pintf, false);
  }

  ksChooseBodiesDispT(ksChooseBodiesPtr pintf)
  {
    TAutoDriver<ksChooseBodies>::Bind(pintf, true);
  }

  ksChooseBodiesDispT& operator=(ksChooseBodies *pintf)
  {
    TAutoDriver<ksChooseBodies>::Bind(pintf, false);
    return *this;
  }

  ksChooseBodiesDispT& operator=(ksChooseBodiesPtr pintf)
  {
    TAutoDriver<ksChooseBodies>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ChooseBodies));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ChooseBodies);
  }

  void            __fastcall set_ChooseBodiesType(long Value);
  long            __fastcall get_ChooseBodiesType();
  LPDISPATCH      __fastcall BodyCollection();

  __property   long            ChooseBodiesType = {read = get_ChooseBodiesType, write = set_ChooseBodiesType};
};
typedef ksChooseBodiesDispT<ksChooseBodies> ksChooseBodiesDisp;

// *********************************************************************//
// DispIntf:  ksAggregateDefinition
// Flags:     (4096) Dispatchable
// GUID:      {44277B89-EEB4-456C-8EF9-2DC48D61EC91}
// *********************************************************************//
template<class T>
class ksAggregateDefinitionDispT : public TAutoDriver<ksAggregateDefinition>
{
public:
  ksAggregateDefinitionDispT(){}

  ksAggregateDefinitionDispT(ksAggregateDefinition *pintf)
  {
    TAutoDriver<ksAggregateDefinition>::Bind(pintf, false);
  }

  ksAggregateDefinitionDispT(ksAggregateDefinitionPtr pintf)
  {
    TAutoDriver<ksAggregateDefinition>::Bind(pintf, true);
  }

  ksAggregateDefinitionDispT& operator=(ksAggregateDefinition *pintf)
  {
    TAutoDriver<ksAggregateDefinition>::Bind(pintf, false);
    return *this;
  }

  ksAggregateDefinitionDispT& operator=(ksAggregateDefinitionPtr pintf)
  {
    TAutoDriver<ksAggregateDefinition>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_AggregateDefinition));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_AggregateDefinition);
  }

  void            __fastcall set_BooleanType(long Value);
  long            __fastcall get_BooleanType();
  LPDISPATCH      __fastcall BodyCollection();

  __property   long            BooleanType = {read = get_BooleanType, write = set_BooleanType};
};
typedef ksAggregateDefinitionDispT<ksAggregateDefinition> ksAggregateDefinitionDisp;

// *********************************************************************//
// DispIntf:  ksChangeLeaderParam
// Flags:     (4096) Dispatchable
// GUID:      {391938AE-79B6-4E3B-9815-AC1A31D9EA9D}
// *********************************************************************//
template<class T>
class ksChangeLeaderParamDispT : public TAutoDriver<ksChangeLeaderParam>
{
public:
  ksChangeLeaderParamDispT(){}

  ksChangeLeaderParamDispT(ksChangeLeaderParam *pintf)
  {
    TAutoDriver<ksChangeLeaderParam>::Bind(pintf, false);
  }

  ksChangeLeaderParamDispT(ksChangeLeaderParamPtr pintf)
  {
    TAutoDriver<ksChangeLeaderParam>::Bind(pintf, true);
  }

  ksChangeLeaderParamDispT& operator=(ksChangeLeaderParam *pintf)
  {
    TAutoDriver<ksChangeLeaderParam>::Bind(pintf, false);
    return *this;
  }

  ksChangeLeaderParamDispT& operator=(ksChangeLeaderParamPtr pintf)
  {
    TAutoDriver<ksChangeLeaderParam>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ChangeLeaderParam));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ChangeLeaderParam);
  }

  void            __fastcall set_x(double Value);
  double          __fastcall get_x();
  void            __fastcall set_y(double Value);
  double          __fastcall get_y();
  void            __fastcall set_signType(short Value);
  short           __fastcall get_signType();
  void            __fastcall set_signHeight(double Value);
  double          __fastcall get_signHeight();
  void            __fastcall set_leaderLength(double Value);
  double          __fastcall get_leaderLength();
  void            __fastcall set_style(long Value);
  long            __fastcall get_style();
  LPDISPATCH      __fastcall GetpTextline();
  TOLEBOOL        __fastcall SetpTextline(LPDISPATCH pTextLine);
  LPDISPATCH      __fastcall GetpPolyline();
  TOLEBOOL        __fastcall SetpPolyline(LPDISPATCH pPolyline);
  TOLEBOOL        __fastcall Init();

  __property   double          x = {read = get_x, write = set_x};
  __property   double          y = {read = get_y, write = set_y};
  __property   short           signType = {read = get_signType, write = set_signType};
  __property   double          signHeight = {read = get_signHeight, write = set_signHeight};
  __property   double          leaderLength = {read = get_leaderLength, write = set_leaderLength};
  __property   long            style = {read = get_style, write = set_style};
};
typedef ksChangeLeaderParamDispT<ksChangeLeaderParam> ksChangeLeaderParamDisp;

// *********************************************************************//
// DispIntf:  ksChooseParts
// Flags:     (4096) Dispatchable
// GUID:      {08B7A093-D829-44A9-A238-2BFF31770112}
// *********************************************************************//
template<class T>
class ksChoosePartsDispT : public TAutoDriver<ksChooseParts>
{
public:
  ksChoosePartsDispT(){}

  ksChoosePartsDispT(ksChooseParts *pintf)
  {
    TAutoDriver<ksChooseParts>::Bind(pintf, false);
  }

  ksChoosePartsDispT(ksChoosePartsPtr pintf)
  {
    TAutoDriver<ksChooseParts>::Bind(pintf, true);
  }

  ksChoosePartsDispT& operator=(ksChooseParts *pintf)
  {
    TAutoDriver<ksChooseParts>::Bind(pintf, false);
    return *this;
  }

  ksChoosePartsDispT& operator=(ksChoosePartsPtr pintf)
  {
    TAutoDriver<ksChooseParts>::Bind(pintf, true);
    return *this;
  }

  HRESULT BindDefault()
  {
    return OLECHECK(Bind(CLSID_ChooseParts));
  }

  HRESULT BindRunning()
  {
    return BindToActive(CLSID_ChooseParts);
  }

  void            __fastcall set_ChoosePartsType(long Value);
  long            __fastcall get_ChoosePartsType();
  LPDISPATCH      __fastcall PartCollection();

  __property   long            ChoosePartsType = {read = get_ChoosePartsType, write = set_ChoosePartsType};
};
typedef ksChoosePartsDispT<ksChooseParts> ksChoosePartsDisp;

// *********************************************************************//
// DispIntf:  ksBodyParts
// Flags:     (4096) Dispatchable
// GUID:      {1E3E9348-DB9B-4967-A62A-B412DF95146A}
// *********************************************************************//
template<class T>
class ksBodyPartsDispT : public TAutoDriver<ksBodyParts>
{
public:
  ksBodyPartsDispT(){}

  ksBodyPartsDispT(ksBodyParts *pintf)
  {
    TAutoDriver<ksBodyParts>::Bind(pintf, false);
  }

  ksBodyPartsDispT(ksBodyPartsPtr pintf)
  {
    TAutoDriver<ksBodyParts>::Bind(pintf, true);
  }

  ksBodyPartsDispT& operator=(ksBodyParts *pintf)
  {
    TAutoDriver<ksBodyParts>::Bind(pintf, false);
    return *this;
  }

  ksBodyPartsDispT& operator=(ksBodyPartsPtr pintf)
  {
    TAutoDriver<ksBodyParts>::Bind(pintf, true);
    return *this;
  }

  void            __fastcall set_AllSelected(TOLEBOOL Value);
  TOLEBOOL        __fastcall get_AllSelected();
  TOLEBOOL        __fastcall UserBodyPartsChoice();
  long            __fastcall get_count();
  TOLEBOOL        __fastcall SetPartSelected(long index, TOLEBOOL Select);
  TOLEBOOL        __fastcall GetPartSelected(long index);
  TOLEBOOL        __fastcall SetGreatPartsSelected();

  __property   TOLEBOOL        AllSelected = {read = get_AllSelected, write = set_AllSelected};
  __property   long            count = {read = get_count};
};
typedef ksBodyPartsDispT<ksBodyParts> ksBodyPartsDisp;

// *********************************************************************//
// DispIntf:  KompasObject
// Flags:     (4096) Dispatchable
// GUID:      {E36BC97C-39D6-4402-9C25-C7008A217E02}
// *********************************************************************//
template <class T> void __fastcall
KompasObjectDispT<T>::set_Visible(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("Visible"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
KompasObjectDispT<T>::get_Visible()
{
  _TDispID _dispid(*this, OLETEXT("Visible"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
KompasObjectDispT<T>::set_lookStyle(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("lookStyle"), DISPID(99));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
KompasObjectDispT<T>::get_lookStyle()
{
  _TDispID _dispid(*this, OLETEXT("lookStyle"), DISPID(99));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
KompasObjectDispT<T>::Document3D()
{
  _TDispID _dispid(*this, OLETEXT("Document3D"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
KompasObjectDispT<T>::ActiveDocument3D()
{
  _TDispID _dispid(*this, OLETEXT("ActiveDocument3D"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
KompasObjectDispT<T>::Document2D()
{
  _TDispID _dispid(*this, OLETEXT("Document2D"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
KompasObjectDispT<T>::ActiveDocument2D()
{
  _TDispID _dispid(*this, OLETEXT("ActiveDocument2D"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
KompasObjectDispT<T>::DataBaseObject()
{
  _TDispID _dispid(*this, OLETEXT("DataBaseObject"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
KompasObjectDispT<T>::GetIterator()
{
  _TDispID _dispid(*this, OLETEXT("GetIterator"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
KompasObjectDispT<T>::GetMathematic2D()
{
  _TDispID _dispid(*this, OLETEXT("GetMathematic2D"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
KompasObjectDispT<T>::GetParamStruct(short structType)
{
  _TDispID _dispid(*this, OLETEXT("GetParamStruct"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = structType /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
KompasObjectDispT<T>::SpcDocument()
{
  _TDispID _dispid(*this, OLETEXT("SpcDocument"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
KompasObjectDispT<T>::SpcActiveDocument()
{
  _TDispID _dispid(*this, OLETEXT("SpcActiveDocument"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
KompasObjectDispT<T>::ksMessage(BSTR s)
{
  _TDispID _dispid(*this, OLETEXT("ksMessage"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = s /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
KompasObjectDispT<T>::ksError(BSTR s)
{
  _TDispID _dispid(*this, OLETEXT("ksError"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = s /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
KompasObjectDispT<T>::ksEnableTaskAccess(long enabl/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("ksEnableTaskAccess"), DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = enabl /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksReturnResult()
{
  _TDispID _dispid(*this, OLETEXT("ksReturnResult"), DISPID(15));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksResultNULL()
{
  _TDispID _dispid(*this, OLETEXT("ksResultNULL"), DISPID(16));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksIsEnableTaskAccess()
{
  _TDispID _dispid(*this, OLETEXT("ksIsEnableTaskAccess"), DISPID(17));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
KompasObjectDispT<T>::ksMessageBoxResult()
{
  _TDispID _dispid(*this, OLETEXT("ksMessageBoxResult"), DISPID(18));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksDrawSlide(long HWindow, long sldID)
{
  _TDispID _dispid(*this, OLETEXT("ksDrawSlide"), DISPID(19));
  TAutoArgs<2> _args;
  _args[1] = HWindow /*[VT_I4:0]*/;
  _args[2] = sldID /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
KompasObjectDispT<T>::ksStrResult()
{
  _TDispID _dispid(*this, OLETEXT("ksStrResult"), DISPID(20));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksGetHWindow()
{
  _TDispID _dispid(*this, OLETEXT("ksGetHWindow"), DISPID(21));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksGetWorkWindowColor()
{
  _TDispID _dispid(*this, OLETEXT("ksGetWorkWindowColor"), DISPID(22));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
KompasObjectDispT<T>::ksPumpWaitingMessages()
{
  _TDispID _dispid(*this, OLETEXT("ksPumpWaitingMessages"), DISPID(23));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksSetCriticalProcess()
{
  _TDispID _dispid(*this, OLETEXT("ksSetCriticalProcess"), DISPID(24));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
KompasObjectDispT<T>::ksChoiceFile(BSTR ext, BSTR filter, TOLEBOOL preview)
{
  _TDispID _dispid(*this, OLETEXT("ksChoiceFile"), DISPID(25));
  TAutoArgs<3> _args;
  _args[1] = ext /*[VT_BSTR:0]*/;
  _args[2] = filter /*[VT_BSTR:0]*/;
  _args[3] = preview /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksDrawBitmap(long HWindow, long sldID)
{
  _TDispID _dispid(*this, OLETEXT("ksDrawBitmap"), DISPID(26));
  TAutoArgs<2> _args;
  _args[1] = HWindow /*[VT_I4:0]*/;
  _args[2] = sldID /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksYesNo(BSTR s)
{
  _TDispID _dispid(*this, OLETEXT("ksYesNo"), DISPID(27));
  TAutoArgs<1> _args;
  _args[1] = s /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksDrawSlideFromFile(long HWindow, BSTR fileName)
{
  _TDispID _dispid(*this, OLETEXT("ksDrawSlideFromFile"), DISPID(28));
  TAutoArgs<2> _args;
  _args[1] = HWindow /*[VT_I4:0]*/;
  _args[2] = fileName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksWriteSlide(BSTR fileName, long iD, double x, double y)
{
  _TDispID _dispid(*this, OLETEXT("ksWriteSlide"), DISPID(29));
  TAutoArgs<4> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = iD /*[VT_I4:0]*/;
  _args[3] = x /*[VT_R8:0]*/;
  _args[4] = y /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
KompasObjectDispT<T>::ksSlideBackground(long color)
{
  _TDispID _dispid(*this, OLETEXT("ksSlideBackground"), DISPID(30));
  TAutoArgs<1> _args;
  _args[1] = color /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksReadDouble(BSTR mess, double defValue, double min, double max, double* value)
{
  _TDispID _dispid(*this, OLETEXT("ksReadDouble"), DISPID(31));
  TAutoArgs<5> _args;
  _args[1] = mess /*[VT_BSTR:0]*/;
  _args[2] = defValue /*[VT_R8:0]*/;
  _args[3] = min /*[VT_R8:0]*/;
  _args[4] = max /*[VT_R8:0]*/;
  _args[5] = value /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksReadInt(BSTR mess, long defValue, long min, long max, long* value)
{
  _TDispID _dispid(*this, OLETEXT("ksReadInt"), DISPID(32));
  TAutoArgs<5> _args;
  _args[1] = mess /*[VT_BSTR:0]*/;
  _args[2] = defValue /*[VT_I4:0]*/;
  _args[3] = min /*[VT_I4:0]*/;
  _args[4] = max /*[VT_I4:0]*/;
  _args[5] = value /*[VT_I4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
KompasObjectDispT<T>::ksReadString(BSTR mess, BSTR value)
{
  _TDispID _dispid(*this, OLETEXT("ksReadString"), DISPID(33));
  TAutoArgs<2> _args;
  _args[1] = mess /*[VT_BSTR:0]*/;
  _args[2] = value /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
KompasObjectDispT<T>::ksFullFileName(BSTR oldName)
{
  _TDispID _dispid(*this, OLETEXT("ksFullFileName"), DISPID(34));
  TAutoArgs<1> _args;
  _args[1] = oldName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
KompasObjectDispT<T>::ksUniqueFileName()
{
  _TDispID _dispid(*this, OLETEXT("ksUniqueFileName"), DISPID(35));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
KompasObjectDispT<T>::ksRemoveUniqueFile(BSTR fileName)
{
  _TDispID _dispid(*this, OLETEXT("ksRemoveUniqueFile"), DISPID(36));
  TAutoArgs<1> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
KompasObjectDispT<T>::ksSystemControlStop()
{
  _TDispID _dispid(*this, OLETEXT("ksSystemControlStop"), DISPID(37));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksSystemControlStart(BSTR menuCommand)
{
  _TDispID _dispid(*this, OLETEXT("ksSystemControlStart"), DISPID(38));
  TAutoArgs<1> _args;
  _args[1] = menuCommand /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
KompasObjectDispT<T>::GetDynamicArray(long type)
{
  _TDispID _dispid(*this, OLETEXT("GetDynamicArray"), DISPID(39));
  TAutoArgs<1> _args;
  _args[1] = type /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
KompasObjectDispT<T>::ksChoiceFileAppointedDir(BSTR ext, BSTR filter, TOLEBOOL preview, long typeDir)
{
  _TDispID _dispid(*this, OLETEXT("ksChoiceFileAppointedDir"), DISPID(40));
  TAutoArgs<4> _args;
  _args[1] = ext /*[VT_BSTR:0]*/;
  _args[2] = filter /*[VT_BSTR:0]*/;
  _args[3] = preview /*[VT_BOOL:0]*/;
  _args[4] = typeDir /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksChoiceFiles(BSTR ext, BSTR filter, LPDISPATCH p, TOLEBOOL preview)
{
  _TDispID _dispid(*this, OLETEXT("ksChoiceFiles"), DISPID(41));
  TAutoArgs<4> _args;
  _args[1] = ext /*[VT_BSTR:0]*/;
  _args[2] = filter /*[VT_BSTR:0]*/;
  _args[3] = p /*[VT_DISPATCH:0]*/;
  _args[4] = preview /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
KompasObjectDispT<T>::ksSaveFile(BSTR ext, BSTR oldName, BSTR filter, TOLEBOOL preview)
{
  _TDispID _dispid(*this, OLETEXT("ksSaveFile"), DISPID(42));
  TAutoArgs<4> _args;
  _args[1] = ext /*[VT_BSTR:0]*/;
  _args[2] = oldName /*[VT_BSTR:0]*/;
  _args[3] = filter /*[VT_BSTR:0]*/;
  _args[4] = preview /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
KompasObjectDispT<T>::GetAttributeObject()
{
  _TDispID _dispid(*this, OLETEXT("GetAttributeObject"), DISPID(43));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksRefreshActiveWindow()
{
  _TDispID _dispid(*this, OLETEXT("ksRefreshActiveWindow"), DISPID(44));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
KompasObjectDispT<T>::ksSystemPath(long pathType)
{
  _TDispID _dispid(*this, OLETEXT("ksSystemPath"), DISPID(45));
  TAutoArgs<1> _args;
  _args[1] = pathType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
KompasObjectDispT<T>::ksGetRelativePathFromSystemPath(BSTR sourcePath, long pathType)
{
  _TDispID _dispid(*this, OLETEXT("ksGetRelativePathFromSystemPath"), DISPID(46));
  TAutoArgs<2> _args;
  _args[1] = sourcePath /*[VT_BSTR:0]*/;
  _args[2] = pathType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
KompasObjectDispT<T>::ksGetFullPathFromSystemPath(BSTR relativePath, long pathType)
{
  _TDispID _dispid(*this, OLETEXT("ksGetFullPathFromSystemPath"), DISPID(47));
  TAutoArgs<2> _args;
  _args[1] = relativePath /*[VT_BSTR:0]*/;
  _args[2] = pathType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
KompasObjectDispT<T>::ksGetRelativePathFromFullPath(BSTR mainFilePath, BSTR sourcePath)
{
  _TDispID _dispid(*this, OLETEXT("ksGetRelativePathFromFullPath"), DISPID(48));
  TAutoArgs<2> _args;
  _args[1] = mainFilePath /*[VT_BSTR:0]*/;
  _args[2] = sourcePath /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
KompasObjectDispT<T>::ksGetFullPathFromRelativePath(BSTR mainFilePath, BSTR relativePath)
{
  _TDispID _dispid(*this, OLETEXT("ksGetFullPathFromRelativePath"), DISPID(49));
  TAutoArgs<2> _args;
  _args[1] = mainFilePath /*[VT_BSTR:0]*/;
  _args[2] = relativePath /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksGetSystemVersion(long* iMajor, long* iMinor, long* iRelease, long* iBuild)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSystemVersion"), DISPID(50));
  TAutoArgs<4> _args;
  _args[1] = iMajor /*[VT_I4:1]*/;
  _args[2] = iMinor /*[VT_I4:1]*/;
  _args[3] = iRelease /*[VT_I4:1]*/;
  _args[4] = iBuild /*[VT_I4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
KompasObjectDispT<T>::ksGetSystemProfileString(BSTR lpSection, BSTR lpKey)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSystemProfileString"), DISPID(51));
  TAutoArgs<2> _args;
  _args[1] = lpSection /*[VT_BSTR:0]*/;
  _args[2] = lpKey /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
KompasObjectDispT<T>::ksOpenHelpFile(BSTR file, long command, long iD)
{
  _TDispID _dispid(*this, OLETEXT("ksOpenHelpFile"), DISPID(52));
  TAutoArgs<3> _args;
  _args[1] = file /*[VT_BSTR:0]*/;
  _args[2] = command /*[VT_I4:0]*/;
  _args[3] = iD /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksSetSysOptions(long optionsType, LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksSetSysOptions"), DISPID(53));
  TAutoArgs<2> _args;
  _args[1] = optionsType /*[VT_I4:0]*/;
  _args[2] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksGetSysOptions(long optionsType, LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSysOptions"), DISPID(54));
  TAutoArgs<2> _args;
  _args[1] = optionsType /*[VT_I4:0]*/;
  _args[2] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksPrintPreviewWindow(LPDISPATCH docsArr, long inquiry)
{
  _TDispID _dispid(*this, OLETEXT("ksPrintPreviewWindow"), DISPID(55));
  TAutoArgs<2> _args;
  _args[1] = docsArr /*[VT_DISPATCH:0]*/;
  _args[2] = inquiry /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
KompasObjectDispT<T>::ksGetLibraryStylesArray(BSTR libraryName, short libraryType)
{
  _TDispID _dispid(*this, OLETEXT("ksGetLibraryStylesArray"), DISPID(56));
  TAutoArgs<2> _args;
  _args[1] = libraryName /*[VT_BSTR:0]*/;
  _args[2] = libraryType /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
KompasObjectDispT<T>::ksViewGetDensity(long HWindow)
{
  _TDispID _dispid(*this, OLETEXT("ksViewGetDensity"), DISPID(57));
  TAutoArgs<1> _args;
  _args[1] = HWindow /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksCalculate(BSTR s, double* rez)
{
  _TDispID _dispid(*this, OLETEXT("ksCalculate"), DISPID(58));
  TAutoArgs<2> _args;
  _args[1] = s /*[VT_BSTR:0]*/;
  _args[2] = rez /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksCalculateReset()
{
  _TDispID _dispid(*this, OLETEXT("ksCalculateReset"), DISPID(59));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksExecuteLibraryCommand(BSTR fileName, long command)
{
  _TDispID _dispid(*this, OLETEXT("ksExecuteLibraryCommand"), DISPID(60));
  TAutoArgs<2> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = command /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksGetQualityNames(LPDISPATCH names, double dimValue, double high, double low, 
                                        short system, short withLimitation)
{
  _TDispID _dispid(*this, OLETEXT("ksGetQualityNames"), DISPID(61));
  TAutoArgs<6> _args;
  _args[1] = names /*[VT_DISPATCH:0]*/;
  _args[2] = dimValue /*[VT_R8:0]*/;
  _args[3] = high /*[VT_R8:0]*/;
  _args[4] = low /*[VT_R8:0]*/;
  _args[5] = system /*[VT_I2:0]*/;
  _args[6] = withLimitation /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksGetQualityDefects(BSTR name, double dimValue, double* high, double* low, 
                                          short inMM)
{
  _TDispID _dispid(*this, OLETEXT("ksGetQualityDefects"), DISPID(62));
  TAutoArgs<5> _args;
  _args[1] = name /*[VT_BSTR:0]*/;
  _args[2] = dimValue /*[VT_R8:0]*/;
  _args[3] = high /*[VT_R8:1]*/;
  _args[4] = low /*[VT_R8:1]*/;
  _args[5] = inMM /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksGetQualityContensParam(BSTR name, LPDISPATCH param, short inMM)
{
  _TDispID _dispid(*this, OLETEXT("ksGetQualityContensParam"), DISPID(63));
  TAutoArgs<3> _args;
  _args[1] = name /*[VT_BSTR:0]*/;
  _args[2] = param /*[VT_DISPATCH:0]*/;
  _args[3] = inMM /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
KompasObjectDispT<T>::ksGet3dDocumentFromRef(long doc)
{
  _TDispID _dispid(*this, OLETEXT("ksGet3dDocumentFromRef"), DISPID(64));
  TAutoArgs<1> _args;
  _args[1] = doc /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
KompasObjectDispT<T>::GetModelLibrary()
{
  _TDispID _dispid(*this, OLETEXT("GetModelLibrary"), DISPID(65));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
KompasObjectDispT<T>::GetFragmentLibrary()
{
  _TDispID _dispid(*this, OLETEXT("GetFragmentLibrary"), DISPID(66));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksIsLibraryEnabled(BSTR libName)
{
  _TDispID _dispid(*this, OLETEXT("ksIsLibraryEnabled"), DISPID(67));
  TAutoArgs<1> _args;
  _args[1] = libName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksIsModuleSpecificationActive()
{
  _TDispID _dispid(*this, OLETEXT("ksIsModuleSpecificationActive"), DISPID(68));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksModuleSpecification(TOLEBOOL attach)
{
  _TDispID _dispid(*this, OLETEXT("ksModuleSpecification"), DISPID(69));
  TAutoArgs<1> _args;
  _args[1] = attach /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
KompasObjectDispT<T>::ksMaterialDlg(long HWindow, long* res, double* plt, double* kod_size_1, 
                                    double* kod_size_2, double* kod_size_3, double* kod_size_4, 
                                    BSTR kod_tip)
{
  _TDispID _dispid(*this, OLETEXT("ksMaterialDlg"), DISPID(70));
  TAutoArgs<8> _args;
  _args[1] = HWindow /*[VT_I4:0]*/;
  _args[2] = res /*[VT_I4:1]*/;
  _args[3] = plt /*[VT_R8:1]*/;
  _args[4] = kod_size_1 /*[VT_R8:1]*/;
  _args[5] = kod_size_2 /*[VT_R8:1]*/;
  _args[6] = kod_size_3 /*[VT_R8:1]*/;
  _args[7] = kod_size_4 /*[VT_R8:1]*/;
  _args[8] = kod_tip /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
KompasObjectDispT<T>::ksExecDialPredefinedText(long HWindow, long* res)
{
  _TDispID _dispid(*this, OLETEXT("ksExecDialPredefinedText"), DISPID(71));
  TAutoArgs<2> _args;
  _args[1] = HWindow /*[VT_I4:0]*/;
  _args[2] = res /*[VT_I4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksDrawSlideEx(long HWindow, long sldID, long hInst)
{
  _TDispID _dispid(*this, OLETEXT("ksDrawSlideEx"), DISPID(72));
  TAutoArgs<3> _args;
  _args[1] = HWindow /*[VT_I4:0]*/;
  _args[2] = sldID /*[VT_I4:0]*/;
  _args[3] = hInst /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
KompasObjectDispT<T>::ksViewGetDensityAndMaterial(double* density, long HWindow)
{
  _TDispID _dispid(*this, OLETEXT("ksViewGetDensityAndMaterial"), DISPID(73));
  TAutoArgs<2> _args;
  _args[1] = density /*[VT_R8:1]*/;
  _args[2] = HWindow /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
KompasObjectDispT<T>::ksConvertLangStr(BSTR src)
{
  _TDispID _dispid(*this, OLETEXT("ksConvertLangStr"), DISPID(74));
  TAutoArgs<1> _args;
  _args[1] = src /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
KompasObjectDispT<T>::ksConvertLangWindow(long hWnd)
{
  _TDispID _dispid(*this, OLETEXT("ksConvertLangWindow"), DISPID(75));
  TAutoArgs<1> _args;
  _args[1] = hWnd /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksConvertLangMenu(long hMenu)
{
  _TDispID _dispid(*this, OLETEXT("ksConvertLangMenu"), DISPID(76));
  TAutoArgs<1> _args;
  _args[1] = hMenu /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
KompasObjectDispT<T>::ksEditTextLine(long HWindow, long* res, BSTR str)
{
  _TDispID _dispid(*this, OLETEXT("ksEditTextLine"), DISPID(77));
  TAutoArgs<3> _args;
  _args[1] = HWindow /*[VT_I4:0]*/;
  _args[2] = res /*[VT_I4:1]*/;
  _args[3] = str /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksGetDocOptions(long optionsType, LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksGetDocOptions"), DISPID(78));
  TAutoArgs<2> _args;
  _args[1] = optionsType /*[VT_I4:0]*/;
  _args[2] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksAttachKompasLibrary(BSTR libName)
{
  _TDispID _dispid(*this, OLETEXT("ksAttachKompasLibrary"), DISPID(79));
  TAutoArgs<1> _args;
  _args[1] = libName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksDetachKompasLibrary(long libId)
{
  _TDispID _dispid(*this, OLETEXT("ksDetachKompasLibrary"), DISPID(80));
  TAutoArgs<1> _args;
  _args[1] = libId /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksExecuteKompasLibraryCommand(long libId, long command)
{
  _TDispID _dispid(*this, OLETEXT("ksExecuteKompasLibraryCommand"), DISPID(81));
  TAutoArgs<2> _args;
  _args[1] = libId /*[VT_I4:0]*/;
  _args[2] = command /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
KompasObjectDispT<T>::Quit()
{
  _TDispID _dispid(*this, OLETEXT("Quit"), DISPID(82));
  OleProcedure(_dispid);
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksPrintKompasDocument(BSTR fileName, BSTR toFile, double scale)
{
  _TDispID _dispid(*this, OLETEXT("ksPrintKompasDocument"), DISPID(83));
  TAutoArgs<3> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = toFile /*[VT_BSTR:0]*/;
  _args[3] = scale /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksDrawKompasDocument(long HWindow, BSTR docFileName)
{
  _TDispID _dispid(*this, OLETEXT("ksDrawKompasDocument"), DISPID(84));
  TAutoArgs<2> _args;
  _args[1] = HWindow /*[VT_I4:0]*/;
  _args[2] = docFileName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
KompasObjectDispT<T>::ksSetFlagDisableLockApp(TOLEBOOL setDisableLockApp)
{
  _TDispID _dispid(*this, OLETEXT("ksSetFlagDisableLockApp"), DISPID(85));
  TAutoArgs<1> _args;
  _args[1] = setDisableLockApp /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
KompasObjectDispT<T>::ActivateControllerAPI()
{
  _TDispID _dispid(*this, OLETEXT("ActivateControllerAPI"), DISPID(86));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
KompasObjectDispT<T>::DocumentTxt()
{
  _TDispID _dispid(*this, OLETEXT("DocumentTxt"), DISPID(87));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
KompasObjectDispT<T>::ActiveDocumentTxt()
{
  _TDispID _dispid(*this, OLETEXT("ActiveDocumentTxt"), DISPID(88));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
KompasObjectDispT<T>::ksGetLibraryTreeStruct(BSTR libName, LPDISPATCH p)
{
  _TDispID _dispid(*this, OLETEXT("ksGetLibraryTreeStruct"), DISPID(89));
  TAutoArgs<2> _args;
  _args[1] = libName /*[VT_BSTR:0]*/;
  _args[2] = p /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksSetDocOptions(long optionsType, LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksSetDocOptions"), DISPID(90));
  TAutoArgs<2> _args;
  _args[1] = optionsType /*[VT_I4:0]*/;
  _args[2] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksGetDocumentType(long doc/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("ksGetDocumentType"), DISPID(91));
  TAutoArgs<1> _args;
  _args[1] = doc /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksDrawKompasDocumentByReference(long HWindow, long pDoc)
{
  _TDispID _dispid(*this, OLETEXT("ksDrawKompasDocumentByReference"), DISPID(92));
  TAutoArgs<2> _args;
  _args[1] = HWindow /*[VT_I4:0]*/;
  _args[2] = pDoc /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
KompasObjectDispT<T>::ksExecDialPredefinedTextEx(long HWindow)
{
  _TDispID _dispid(*this, OLETEXT("ksExecDialPredefinedTextEx"), DISPID(93));
  TAutoArgs<1> _args;
  _args[1] = HWindow /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksGetDocumentTypeByName(BSTR fileName)
{
  _TDispID _dispid(*this, OLETEXT("ksGetDocumentTypeByName"), DISPID(94));
  TAutoArgs<1> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
KompasObjectDispT<T>::ksGetDocumentByReference(long docRef)
{
  _TDispID _dispid(*this, OLETEXT("ksGetDocumentByReference"), DISPID(95));
  TAutoArgs<1> _args;
  _args[1] = docRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
KompasObjectDispT<T>::ksConvertLangStrEx(long hInstance, long strID)
{
  _TDispID _dispid(*this, OLETEXT("ksConvertLangStrEx"), DISPID(96));
  TAutoArgs<2> _args;
  _args[1] = hInstance /*[VT_I4:0]*/;
  _args[2] = strID /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
KompasObjectDispT<T>::ksConvertLangWindowEx(long hWnd, long hInstance, BSTR dlgID)
{
  _TDispID _dispid(*this, OLETEXT("ksConvertLangWindowEx"), DISPID(97));
  TAutoArgs<3> _args;
  _args[1] = hWnd /*[VT_I4:0]*/;
  _args[2] = hInstance /*[VT_I4:0]*/;
  _args[3] = dlgID /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
KompasObjectDispT<T>::LoadDSK()
{
  _TDispID _dispid(*this, OLETEXT("LoadDSK"), DISPID(98));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
KompasObjectDispT<T>::GetObjectsFilter3D()
{
  _TDispID _dispid(*this, OLETEXT("GetObjectsFilter3D"), DISPID(100));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksExecuteKompasLibraryCommandEx(long libId, long command, LPDISPATCH external)
{
  _TDispID _dispid(*this, OLETEXT("ksExecuteKompasLibraryCommandEx"), DISPID(101));
  TAutoArgs<3> _args;
  _args[1] = libId /*[VT_I4:0]*/;
  _args[2] = command /*[VT_I4:0]*/;
  _args[3] = external /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
KompasObjectDispT<T>::ksGetExternaldispinterface()
{
  _TDispID _dispid(*this, OLETEXT("ksGetExternaldispinterface"), DISPID(102));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
KompasObjectDispT<T>::ksGetApplication7()
{
  _TDispID _dispid(*this, OLETEXT("ksGetApplication7"), DISPID(103));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksDrawBitmapEx(long HWindow, long bmpID, long hInst)
{
  _TDispID _dispid(*this, OLETEXT("ksDrawBitmapEx"), DISPID(104));
  TAutoArgs<3> _args;
  _args[1] = HWindow /*[VT_I4:0]*/;
  _args[2] = bmpID /*[VT_I4:0]*/;
  _args[3] = hInst /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksGetSystemControlStartResult()
{
  _TDispID _dispid(*this, OLETEXT("ksGetSystemControlStartResult"), DISPID(105));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksIsModule3DActive()
{
  _TDispID _dispid(*this, OLETEXT("ksIsModule3DActive"), DISPID(106));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksModule3D(TOLEBOOL attach)
{
  _TDispID _dispid(*this, OLETEXT("ksModule3D"), DISPID(107));
  TAutoArgs<1> _args;
  _args[1] = attach /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPUNKNOWN __fastcall
KompasObjectDispT<T>::TransferInterface(LPUNKNOWN obj, long apiNewType, long objNewType)
{
  _TDispID _dispid(*this, OLETEXT("TransferInterface"), DISPID(108));
  TAutoArgs<3> _args;
  _args[1] = obj /*[VT_UNKNOWN:0]*/;
  _args[2] = apiNewType /*[VT_I4:0]*/;
  _args[3] = objNewType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
KompasObjectDispT<T>::ksExecuteKompasCommand(long commandID, TOLEBOOL post)
{
  _TDispID _dispid(*this, OLETEXT("ksExecuteKompasCommand"), DISPID(109));
  TAutoArgs<2> _args;
  _args[1] = commandID /*[VT_I4:0]*/;
  _args[2] = post /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
KompasObjectDispT<T>::ksIsKompasCommandEnable(long commandID)
{
  _TDispID _dispid(*this, OLETEXT("ksIsKompasCommandEnable"), DISPID(110));
  TAutoArgs<1> _args;
  _args[1] = commandID /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksIsKompasCommandCheck(long commandID)
{
  _TDispID _dispid(*this, OLETEXT("ksIsKompasCommandCheck"), DISPID(111));
  TAutoArgs<1> _args;
  _args[1] = commandID /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPUNKNOWN __fastcall
KompasObjectDispT<T>::TransferReference(long obj, long docRef)
{
  _TDispID _dispid(*this, OLETEXT("TransferReference"), DISPID(112));
  TAutoArgs<2> _args;
  _args[1] = obj /*[VT_I4:0]*/;
  _args[2] = docRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksDrawKompasText(long HWindow, BSTR text)
{
  _TDispID _dispid(*this, OLETEXT("ksDrawKompasText"), DISPID(113));
  TAutoArgs<2> _args;
  _args[1] = HWindow /*[VT_I4:0]*/;
  _args[2] = text /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
KompasObjectDispT<T>::ksPrintKompasDocumentEx(BSTR fileName, BSTR toFile, double scale, 
                                              TOLEBOOL FKompasPrinter)
{
  _TDispID _dispid(*this, OLETEXT("ksPrintKompasDocumentEx"), DISPID(114));
  TAutoArgs<4> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = toFile /*[VT_BSTR:0]*/;
  _args[3] = scale /*[VT_R8:0]*/;
  _args[4] = FKompasPrinter /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> int __fastcall
KompasObjectDispT<T>::ksExecDialSpecialSymbol(long HWindow)
{
  _TDispID _dispid(*this, OLETEXT("ksExecDialSpecialSymbol"), DISPID(115));
  TAutoArgs<1> _args;
  _args[1] = HWindow /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
KompasObjectDispT<T>::ksExecDialSymbol(long HWindow, long* symb, BSTR font)
{
  _TDispID _dispid(*this, OLETEXT("ksExecDialSymbol"), DISPID(116));
  TAutoArgs<3> _args;
  _args[1] = HWindow /*[VT_I4:0]*/;
  _args[2] = symb /*[VT_I4:1]*/;
  _args[3] = font /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksDocument2D
// Flags:     (4096) Dispatchable
// GUID:      {AF4E160D-5C89-4F21-B0F2-D53397BDAF78}
// *********************************************************************//
template <class T> void __fastcall
ksDocument2DDispT<T>::set_reference(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("reference"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksDocument2DDispT<T>::get_reference()
{
  _TDispID _dispid(*this, OLETEXT("reference"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocument2DDispT<T>::set_orthoMode(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("orthoMode"), DISPID(212));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksDocument2DDispT<T>::get_orthoMode()
{
  _TDispID _dispid(*this, OLETEXT("orthoMode"), DISPID(212));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksLineSeg(double x1, double y1, double x2, double y2, long style)
{
  _TDispID _dispid(*this, OLETEXT("ksLineSeg"), DISPID(2));
  TAutoArgs<5> _args;
  _args[1] = x1 /*[VT_R8:0]*/;
  _args[2] = y1 /*[VT_R8:0]*/;
  _args[3] = x2 /*[VT_R8:0]*/;
  _args[4] = y2 /*[VT_R8:0]*/;
  _args[5] = style /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksRectangle(LPDISPATCH par, short centre/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("ksRectangle"), DISPID(3));
  TAutoArgs<2> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  _args[2] = centre /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksCircle(double xc, double yc, double rad, long style)
{
  _TDispID _dispid(*this, OLETEXT("ksCircle"), DISPID(4));
  TAutoArgs<4> _args;
  _args[1] = xc /*[VT_R8:0]*/;
  _args[2] = yc /*[VT_R8:0]*/;
  _args[3] = rad /*[VT_R8:0]*/;
  _args[4] = style /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksArcByAngle(double xc, double yc, double rad, double f1, double f2, 
                                   short direction, long style)
{
  _TDispID _dispid(*this, OLETEXT("ksArcByAngle"), DISPID(5));
  TAutoArgs<7> _args;
  _args[1] = xc /*[VT_R8:0]*/;
  _args[2] = yc /*[VT_R8:0]*/;
  _args[3] = rad /*[VT_R8:0]*/;
  _args[4] = f1 /*[VT_R8:0]*/;
  _args[5] = f2 /*[VT_R8:0]*/;
  _args[6] = direction /*[VT_I2:0]*/;
  _args[7] = style /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksArcByPoint(double xc, double yc, double rad, double x1, double y1, double x2
                                   , double y2, short direction, long style)
{
  _TDispID _dispid(*this, OLETEXT("ksArcByPoint"), DISPID(6));
  TAutoArgs<9> _args;
  _args[1] = xc /*[VT_R8:0]*/;
  _args[2] = yc /*[VT_R8:0]*/;
  _args[3] = rad /*[VT_R8:0]*/;
  _args[4] = x1 /*[VT_R8:0]*/;
  _args[5] = y1 /*[VT_R8:0]*/;
  _args[6] = x2 /*[VT_R8:0]*/;
  _args[7] = y2 /*[VT_R8:0]*/;
  _args[8] = direction /*[VT_I2:0]*/;
  _args[9] = style /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksArcBy3Points(double x1, double y1, double x2, double y2, double x3, 
                                     double y3, long style)
{
  _TDispID _dispid(*this, OLETEXT("ksArcBy3Points"), DISPID(7));
  TAutoArgs<7> _args;
  _args[1] = x1 /*[VT_R8:0]*/;
  _args[2] = y1 /*[VT_R8:0]*/;
  _args[3] = x2 /*[VT_R8:0]*/;
  _args[4] = y2 /*[VT_R8:0]*/;
  _args[5] = x3 /*[VT_R8:0]*/;
  _args[6] = y3 /*[VT_R8:0]*/;
  _args[7] = style /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetObjParam(long ref, LPDISPATCH param, long parType/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("ksGetObjParam"), DISPID(8));
  TAutoArgs<3> _args;
  _args[1] = ref /*[VT_I4:0]*/;
  _args[2] = param /*[VT_DISPATCH:0]*/;
  _args[3] = parType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksSetObjParam(long referObj, LPDISPATCH param, long parType/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("ksSetObjParam"), DISPID(9));
  TAutoArgs<3> _args;
  _args[1] = referObj /*[VT_I4:0]*/;
  _args[2] = param /*[VT_DISPATCH:0]*/;
  _args[3] = parType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksContour(long style)
{
  _TDispID _dispid(*this, OLETEXT("ksContour"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = style /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksMacro(short type)
{
  _TDispID _dispid(*this, OLETEXT("ksMacro"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = type /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksParagraph(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksParagraph"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksTextLine(LPDISPATCH textItem)
{
  _TDispID _dispid(*this, OLETEXT("ksTextLine"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = textItem /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksUpdateMacro(long macro, long gr)
{
  _TDispID _dispid(*this, OLETEXT("ksUpdateMacro"), DISPID(14));
  TAutoArgs<2> _args;
  _args[1] = macro /*[VT_I4:0]*/;
  _args[2] = gr /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksLine(double x, double y, double angle)
{
  _TDispID _dispid(*this, OLETEXT("ksLine"), DISPID(15));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = angle /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksPoint(double x, double y, long style)
{
  _TDispID _dispid(*this, OLETEXT("ksPoint"), DISPID(16));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = style /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksText(double x, double y, double ang, double hStr, double ksuStr, 
                             long bitVector, BSTR s)
{
  _TDispID _dispid(*this, OLETEXT("ksText"), DISPID(17));
  TAutoArgs<7> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = ang /*[VT_R8:0]*/;
  _args[4] = hStr /*[VT_R8:0]*/;
  _args[5] = ksuStr /*[VT_R8:0]*/;
  _args[6] = bitVector /*[VT_I4:0]*/;
  _args[7] = s /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksHatchByParam(LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksHatchByParam"), DISPID(18));
  TAutoArgs<1> _args;
  _args[1] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksEndObj()
{
  _TDispID _dispid(*this, OLETEXT("ksEndObj"), DISPID(19));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksLayer(long n)
{
  _TDispID _dispid(*this, OLETEXT("ksLayer"), DISPID(20));
  TAutoArgs<1> _args;
  _args[1] = n /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetLayerNumber(long p)
{
  _TDispID _dispid(*this, OLETEXT("ksGetLayerNumber"), DISPID(21));
  TAutoArgs<1> _args;
  _args[1] = p /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetLayerReference(long number)
{
  _TDispID _dispid(*this, OLETEXT("ksGetLayerReference"), DISPID(22));
  TAutoArgs<1> _args;
  _args[1] = number /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksChangeObjectLayer(long obj, long number)
{
  _TDispID _dispid(*this, OLETEXT("ksChangeObjectLayer"), DISPID(23));
  TAutoArgs<2> _args;
  _args[1] = obj /*[VT_I4:0]*/;
  _args[2] = number /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksNewGroup(short type)
{
  _TDispID _dispid(*this, OLETEXT("ksNewGroup"), DISPID(24));
  TAutoArgs<1> _args;
  _args[1] = type /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksEndGroup()
{
  _TDispID _dispid(*this, OLETEXT("ksEndGroup"), DISPID(25));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksMakeEncloseContours(long gr, double x, double y)
{
  _TDispID _dispid(*this, OLETEXT("ksMakeEncloseContours"), DISPID(26));
  TAutoArgs<3> _args;
  _args[1] = gr /*[VT_I4:0]*/;
  _args[2] = x /*[VT_R8:0]*/;
  _args[3] = y /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksIsCursorOrPlacementDocument()
{
  _TDispID _dispid(*this, OLETEXT("ksIsCursorOrPlacementDocument"), DISPID(27));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksIsActiveProcessRunnig()
{
  _TDispID _dispid(*this, OLETEXT("ksIsActiveProcessRunnig"), DISPID(28));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksPhantomShowHide(BSTR show)
{
  _TDispID _dispid(*this, OLETEXT("ksPhantomShowHide"), DISPID(29));
  TAutoArgs<1> _args;
  _args[1] = show /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetCursorPosition(double* x, double* y, long type)
{
  _TDispID _dispid(*this, OLETEXT("ksGetCursorPosition"), DISPID(30));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  _args[3] = type /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksKeepReference(long r)
{
  _TDispID _dispid(*this, OLETEXT("ksKeepReference"), DISPID(31));
  TAutoArgs<1> _args;
  _args[1] = r /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetMacroParamSize(long ref)
{
  _TDispID _dispid(*this, OLETEXT("ksGetMacroParamSize"), DISPID(32));
  TAutoArgs<1> _args;
  _args[1] = ref /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksEditMacroMode()
{
  _TDispID _dispid(*this, OLETEXT("ksEditMacroMode"), DISPID(33));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksDeleteObj(long ref)
{
  _TDispID _dispid(*this, OLETEXT("ksDeleteObj"), DISPID(34));
  TAutoArgs<1> _args;
  _args[1] = ref /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksMoveObj(long ref, double x, double y)
{
  _TDispID _dispid(*this, OLETEXT("ksMoveObj"), DISPID(35));
  TAutoArgs<3> _args;
  _args[1] = ref /*[VT_I4:0]*/;
  _args[2] = x /*[VT_R8:0]*/;
  _args[3] = y /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksRotateObj(long ref, double x, double y, double angle)
{
  _TDispID _dispid(*this, OLETEXT("ksRotateObj"), DISPID(36));
  TAutoArgs<4> _args;
  _args[1] = ref /*[VT_I4:0]*/;
  _args[2] = x /*[VT_R8:0]*/;
  _args[3] = y /*[VT_R8:0]*/;
  _args[4] = angle /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksTransformObj(long ref)
{
  _TDispID _dispid(*this, OLETEXT("ksTransformObj"), DISPID(37));
  TAutoArgs<1> _args;
  _args[1] = ref /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksLightObj(long ref, short light)
{
  _TDispID _dispid(*this, OLETEXT("ksLightObj"), DISPID(38));
  TAutoArgs<2> _args;
  _args[1] = ref /*[VT_I4:0]*/;
  _args[2] = light /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksFindObj(double x, double y, double limit)
{
  _TDispID _dispid(*this, OLETEXT("ksFindObj"), DISPID(39));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = limit /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksSymmetryObj(long ref, double x1, double y1, double x2, double y2, BSTR copy)
{
  _TDispID _dispid(*this, OLETEXT("ksSymmetryObj"), DISPID(40));
  TAutoArgs<6> _args;
  _args[1] = ref /*[VT_I4:0]*/;
  _args[2] = x1 /*[VT_R8:0]*/;
  _args[3] = y1 /*[VT_R8:0]*/;
  _args[4] = x2 /*[VT_R8:0]*/;
  _args[5] = y2 /*[VT_R8:0]*/;
  _args[6] = copy /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksCopyObj(long ref, double xOld, double yOld, double xNew, double yNew, 
                                double scale, double angle)
{
  _TDispID _dispid(*this, OLETEXT("ksCopyObj"), DISPID(41));
  TAutoArgs<7> _args;
  _args[1] = ref /*[VT_I4:0]*/;
  _args[2] = xOld /*[VT_R8:0]*/;
  _args[3] = yOld /*[VT_R8:0]*/;
  _args[4] = xNew /*[VT_R8:0]*/;
  _args[5] = yNew /*[VT_R8:0]*/;
  _args[6] = scale /*[VT_R8:0]*/;
  _args[7] = angle /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksCreateViewObject(long type)
{
  _TDispID _dispid(*this, OLETEXT("ksCreateViewObject"), DISPID(42));
  TAutoArgs<1> _args;
  _args[1] = type /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksEditViewObject(long ref)
{
  _TDispID _dispid(*this, OLETEXT("ksEditViewObject"), DISPID(43));
  TAutoArgs<1> _args;
  _args[1] = ref /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksAnnLineSeg(double x1, double y1, double x2, double y2, short term1, 
                                   short term2, long style)
{
  _TDispID _dispid(*this, OLETEXT("ksAnnLineSeg"), DISPID(44));
  TAutoArgs<7> _args;
  _args[1] = x1 /*[VT_R8:0]*/;
  _args[2] = y1 /*[VT_R8:0]*/;
  _args[3] = x2 /*[VT_R8:0]*/;
  _args[4] = y2 /*[VT_R8:0]*/;
  _args[5] = term1 /*[VT_I2:0]*/;
  _args[6] = term2 /*[VT_I2:0]*/;
  _args[7] = style /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksPointArraw(double x, double y, double ang, short term)
{
  _TDispID _dispid(*this, OLETEXT("ksPointArraw"), DISPID(45));
  TAutoArgs<4> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = ang /*[VT_R8:0]*/;
  _args[4] = term /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksAnnArcByPoint(double xc, double yc, double rad, double x1, double y1, 
                                      double x2, double y2, short direction, short term1, 
                                      short term2, long style)
{
  _TDispID _dispid(*this, OLETEXT("ksAnnArcByPoint"), DISPID(46));
  TAutoArgs<11> _args;
  _args[1] = xc /*[VT_R8:0]*/;
  _args[2] = yc /*[VT_R8:0]*/;
  _args[3] = rad /*[VT_R8:0]*/;
  _args[4] = x1 /*[VT_R8:0]*/;
  _args[5] = y1 /*[VT_R8:0]*/;
  _args[6] = x2 /*[VT_R8:0]*/;
  _args[7] = y2 /*[VT_R8:0]*/;
  _args[8] = direction /*[VT_I2:0]*/;
  _args[9] = term1 /*[VT_I2:0]*/;
  _args[10] = term2 /*[VT_I2:0]*/;
  _args[11] = style /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksEllipse(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksEllipse"), DISPID(47));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksEllipseArc(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksEllipseArc"), DISPID(48));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksParEllipseArc(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksParEllipseArc"), DISPID(49));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksEquidistant(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksEquidistant"), DISPID(50));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksIsPointInsideContour(long p, double x, double y, double precision)
{
  _TDispID _dispid(*this, OLETEXT("ksIsPointInsideContour"), DISPID(51));
  TAutoArgs<4> _args;
  _args[1] = p /*[VT_I4:0]*/;
  _args[2] = x /*[VT_R8:0]*/;
  _args[3] = y /*[VT_R8:0]*/;
  _args[4] = precision /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksConvertTextToCurve(long text)
{
  _TDispID _dispid(*this, OLETEXT("ksConvertTextToCurve"), DISPID(52));
  TAutoArgs<1> _args;
  _args[1] = text /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksStoreTmpGroup(long g)
{
  _TDispID _dispid(*this, OLETEXT("ksStoreTmpGroup"), DISPID(53));
  TAutoArgs<1> _args;
  _args[1] = g /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksOpenMacro(long macro)
{
  _TDispID _dispid(*this, OLETEXT("ksOpenMacro"), DISPID(54));
  TAutoArgs<1> _args;
  _args[1] = macro /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksAddObjectToMacro(long macro, long obj)
{
  _TDispID _dispid(*this, OLETEXT("ksAddObjectToMacro"), DISPID(55));
  TAutoArgs<2> _args;
  _args[1] = macro /*[VT_I4:0]*/;
  _args[2] = obj /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksHatch(long style, double angle, double step, double width, double x0, 
                              double y0)
{
  _TDispID _dispid(*this, OLETEXT("ksHatch"), DISPID(56));
  TAutoArgs<6> _args;
  _args[1] = style /*[VT_I4:0]*/;
  _args[2] = angle /*[VT_R8:0]*/;
  _args[3] = step /*[VT_R8:0]*/;
  _args[4] = width /*[VT_R8:0]*/;
  _args[5] = x0 /*[VT_R8:0]*/;
  _args[6] = y0 /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksColouring(long color)
{
  _TDispID _dispid(*this, OLETEXT("ksColouring"), DISPID(57));
  TAutoArgs<1> _args;
  _args[1] = color /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksDuplicateBoundaries(long p)
{
  _TDispID _dispid(*this, OLETEXT("ksDuplicateBoundaries"), DISPID(58));
  TAutoArgs<1> _args;
  _args[1] = p /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksNurbsPoint(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksNurbsPoint"), DISPID(59));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksNurbsKnot(double knot)
{
  _TDispID _dispid(*this, OLETEXT("ksNurbsKnot"), DISPID(60));
  TAutoArgs<1> _args;
  _args[1] = knot /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksNurbs(short degree, TOLEBOOL close, long style)
{
  _TDispID _dispid(*this, OLETEXT("ksNurbs"), DISPID(61));
  TAutoArgs<3> _args;
  _args[1] = degree /*[VT_I2:0]*/;
  _args[2] = close /*[VT_BOOL:0]*/;
  _args[3] = style /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksRegularPolygon(LPDISPATCH par, short centre/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("ksRegularPolygon"), DISPID(62));
  TAutoArgs<2> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  _args[2] = centre /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksClearGroup(long g, TOLEBOOL deleteTmp)
{
  _TDispID _dispid(*this, OLETEXT("ksClearGroup"), DISPID(63));
  TAutoArgs<2> _args;
  _args[1] = g /*[VT_I4:0]*/;
  _args[2] = deleteTmp /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksExcludeObjGroup(long g, long p)
{
  _TDispID _dispid(*this, OLETEXT("ksExcludeObjGroup"), DISPID(64));
  TAutoArgs<2> _args;
  _args[1] = g /*[VT_I4:0]*/;
  _args[2] = p /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksAddObjGroup(long g, long p)
{
  _TDispID _dispid(*this, OLETEXT("ksAddObjGroup"), DISPID(65));
  TAutoArgs<2> _args;
  _args[1] = g /*[VT_I4:0]*/;
  _args[2] = p /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksSaveGroup(long g, BSTR name)
{
  _TDispID _dispid(*this, OLETEXT("ksSaveGroup"), DISPID(66));
  TAutoArgs<2> _args;
  _args[1] = g /*[VT_I4:0]*/;
  _args[2] = name /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksSelectGroup(long g, short selectMode, double xmin, double ymin, double xmax
                                    , double ymax)
{
  _TDispID _dispid(*this, OLETEXT("ksSelectGroup"), DISPID(67));
  TAutoArgs<6> _args;
  _args[1] = g /*[VT_I4:0]*/;
  _args[2] = selectMode /*[VT_I2:0]*/;
  _args[3] = xmin /*[VT_R8:0]*/;
  _args[4] = ymin /*[VT_R8:0]*/;
  _args[5] = xmax /*[VT_R8:0]*/;
  _args[6] = ymax /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksExistGroupObj(long g)
{
  _TDispID _dispid(*this, OLETEXT("ksExistGroupObj"), DISPID(68));
  TAutoArgs<1> _args;
  _args[1] = g /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksWriteGroupToClip(long g, TOLEBOOL copy)
{
  _TDispID _dispid(*this, OLETEXT("ksWriteGroupToClip"), DISPID(69));
  TAutoArgs<2> _args;
  _args[1] = g /*[VT_I4:0]*/;
  _args[2] = copy /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetGroup(BSTR name)
{
  _TDispID _dispid(*this, OLETEXT("ksGetGroup"), DISPID(70));
  TAutoArgs<1> _args;
  _args[1] = name /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksReadGroupFromClip()
{
  _TDispID _dispid(*this, OLETEXT("ksReadGroupFromClip"), DISPID(71));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksConicArc(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksConicArc"), DISPID(72));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksCentreMarker(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksCentreMarker"), DISPID(73));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksBezier(short closed, long style)
{
  _TDispID _dispid(*this, OLETEXT("ksBezier"), DISPID(74));
  TAutoArgs<2> _args;
  _args[1] = closed /*[VT_I2:0]*/;
  _args[2] = style /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksBezierPoint(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksBezierPoint"), DISPID(75));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetStyleParam(short type, short styleId, LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksGetStyleParam"), DISPID(76));
  TAutoArgs<3> _args;
  _args[1] = type /*[VT_I2:0]*/;
  _args[2] = styleId /*[VT_I2:0]*/;
  _args[3] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksInsertRaster(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksInsertRaster"), DISPID(77));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksLinDimension(LPDISPATCH linPar)
{
  _TDispID _dispid(*this, OLETEXT("ksLinDimension"), DISPID(78));
  TAutoArgs<1> _args;
  _args[1] = linPar /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksAngDimension(LPDISPATCH angPar)
{
  _TDispID _dispid(*this, OLETEXT("ksAngDimension"), DISPID(79));
  TAutoArgs<1> _args;
  _args[1] = angPar /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksDiamDimension(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksDiamDimension"), DISPID(80));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksRadDimension(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksRadDimension"), DISPID(81));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksRadBreakDimension(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksRadBreakDimension"), DISPID(82));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksOrdinatedDimension(LPDISPATCH ordPar)
{
  _TDispID _dispid(*this, OLETEXT("ksOrdinatedDimension"), DISPID(83));
  TAutoArgs<1> _args;
  _args[1] = ordPar /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksAddStyle(short type, LPDISPATCH param, short copy)
{
  _TDispID _dispid(*this, OLETEXT("ksAddStyle"), DISPID(84));
  TAutoArgs<3> _args;
  _args[1] = type /*[VT_I2:0]*/;
  _args[2] = param /*[VT_DISPATCH:0]*/;
  _args[3] = copy /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksIsStyleInDocument(short type, LPDISPATCH param, short copy)
{
  _TDispID _dispid(*this, OLETEXT("ksIsStyleInDocument"), DISPID(85));
  TAutoArgs<3> _args;
  _args[1] = type /*[VT_I2:0]*/;
  _args[2] = param /*[VT_DISPATCH:0]*/;
  _args[3] = copy /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksDeleteStyleFromDocument(short type, LPDISPATCH param, short copy)
{
  _TDispID _dispid(*this, OLETEXT("ksDeleteStyleFromDocument"), DISPID(86));
  TAutoArgs<3> _args;
  _args[1] = type /*[VT_I2:0]*/;
  _args[2] = param /*[VT_DISPATCH:0]*/;
  _args[3] = copy /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksExistObj(long ref)
{
  _TDispID _dispid(*this, OLETEXT("ksExistObj"), DISPID(87));
  TAutoArgs<1> _args;
  _args[1] = ref /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetObjGabaritRect(long p, LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksGetObjGabaritRect"), DISPID(88));
  TAutoArgs<2> _args;
  _args[1] = p /*[VT_I4:0]*/;
  _args[2] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksSheetToView(double x, double y, double* outX, double* outY)
{
  _TDispID _dispid(*this, OLETEXT("ksSheetToView"), DISPID(89));
  TAutoArgs<4> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = outX /*[VT_R8:1]*/;
  _args[4] = outY /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksViewToSheet(double x, double y, double* outX, double* outY)
{
  _TDispID _dispid(*this, OLETEXT("ksViewToSheet"), DISPID(90));
  TAutoArgs<4> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = outX /*[VT_R8:1]*/;
  _args[4] = outY /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksPolyline(long style)
{
  _TDispID _dispid(*this, OLETEXT("ksPolyline"), DISPID(91));
  TAutoArgs<1> _args;
  _args[1] = style /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksPolylineByParam(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksPolylineByParam"), DISPID(92));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetReferenceDocumentPart(short t)
{
  _TDispID _dispid(*this, OLETEXT("ksGetReferenceDocumentPart"), DISPID(93));
  TAutoArgs<1> _args;
  _args[1] = t /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetViewReference(long number)
{
  _TDispID _dispid(*this, OLETEXT("ksGetViewReference"), DISPID(94));
  TAutoArgs<1> _args;
  _args[1] = number /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetViewNumber(long p)
{
  _TDispID _dispid(*this, OLETEXT("ksGetViewNumber"), DISPID(95));
  TAutoArgs<1> _args;
  _args[1] = p /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksOpenView(long number)
{
  _TDispID _dispid(*this, OLETEXT("ksOpenView"), DISPID(96));
  TAutoArgs<1> _args;
  _args[1] = number /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksNewViewNumber()
{
  _TDispID _dispid(*this, OLETEXT("ksNewViewNumber"), DISPID(97));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksCreateSheetView(LPDISPATCH par, long* number)
{
  _TDispID _dispid(*this, OLETEXT("ksCreateSheetView"), DISPID(98));
  TAutoArgs<2> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  _args[2] = number /*[VT_I4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksDecomposeObj(long p, short level, double arrow, short type)
{
  _TDispID _dispid(*this, OLETEXT("ksDecomposeObj"), DISPID(99));
  TAutoArgs<4> _args;
  _args[1] = p /*[VT_I4:0]*/;
  _args[2] = level /*[VT_I2:0]*/;
  _args[3] = arrow /*[VT_R8:0]*/;
  _args[4] = type /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetViewObjCount(long p)
{
  _TDispID _dispid(*this, OLETEXT("ksGetViewObjCount"), DISPID(100));
  TAutoArgs<1> _args;
  _args[1] = p /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksLinBreakDimension(LPDISPATCH linPar)
{
  _TDispID _dispid(*this, OLETEXT("ksLinBreakDimension"), DISPID(101));
  TAutoArgs<1> _args;
  _args[1] = linPar /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksAngBreakDimension(LPDISPATCH angPar)
{
  _TDispID _dispid(*this, OLETEXT("ksAngBreakDimension"), DISPID(102));
  TAutoArgs<1> _args;
  _args[1] = angPar /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksIsCurveClosed(long p)
{
  _TDispID _dispid(*this, OLETEXT("ksIsCurveClosed"), DISPID(103));
  TAutoArgs<1> _args;
  _args[1] = p /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksBase(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksBase"), DISPID(104));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksRough(LPDISPATCH roughPar)
{
  _TDispID _dispid(*this, OLETEXT("ksRough"), DISPID(105));
  TAutoArgs<1> _args;
  _args[1] = roughPar /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksDocument2DDispT<T>::ksGetGroupName(long gr, long* group, long size)
{
  _TDispID _dispid(*this, OLETEXT("ksGetGroupName"), DISPID(106));
  TAutoArgs<3> _args;
  _args[1] = gr /*[VT_I4:0]*/;
  _args[2] = group /*[VT_I4:1]*/;
  _args[3] = size /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksMtr(double x, double y, double angle, double scaleX, double scaleY)
{
  _TDispID _dispid(*this, OLETEXT("ksMtr"), DISPID(107));
  TAutoArgs<5> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = angle /*[VT_R8:0]*/;
  _args[4] = scaleX /*[VT_R8:0]*/;
  _args[5] = scaleY /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksDeleteMtr()
{
  _TDispID _dispid(*this, OLETEXT("ksDeleteMtr"), DISPID(108));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksPointIntoMtr(double x, double y, double* xn, double* yn)
{
  _TDispID _dispid(*this, OLETEXT("ksPointIntoMtr"), DISPID(109));
  TAutoArgs<4> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = xn /*[VT_R8:1]*/;
  _args[4] = yn /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksPointFromMtr(double x, double y, double* xn, double* yn)
{
  _TDispID _dispid(*this, OLETEXT("ksPointFromMtr"), DISPID(110));
  TAutoArgs<4> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = xn /*[VT_R8:1]*/;
  _args[4] = yn /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksLengthIntoMtr(double* len)
{
  _TDispID _dispid(*this, OLETEXT("ksLengthIntoMtr"), DISPID(111));
  TAutoArgs<1> _args;
  _args[1] = len /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksLengthFromMtr(double* len)
{
  _TDispID _dispid(*this, OLETEXT("ksLengthFromMtr"), DISPID(112));
  TAutoArgs<1> _args;
  _args[1] = len /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksLeader(LPDISPATCH leaderPar)
{
  _TDispID _dispid(*this, OLETEXT("ksLeader"), DISPID(113));
  TAutoArgs<1> _args;
  _args[1] = leaderPar /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksPositionLeader(LPDISPATCH posLeaderParam)
{
  _TDispID _dispid(*this, OLETEXT("ksPositionLeader"), DISPID(114));
  TAutoArgs<1> _args;
  _args[1] = posLeaderParam /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksBrandLeader(LPDISPATCH brandLeaderParam)
{
  _TDispID _dispid(*this, OLETEXT("ksBrandLeader"), DISPID(115));
  TAutoArgs<1> _args;
  _args[1] = brandLeaderParam /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksMarkerLeader(LPDISPATCH markerLeaderParam)
{
  _TDispID _dispid(*this, OLETEXT("ksMarkerLeader"), DISPID(116));
  TAutoArgs<1> _args;
  _args[1] = markerLeaderParam /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksCursor(LPDISPATCH info, double* x, double* y, LPDISPATCH phantom)
{
  _TDispID _dispid(*this, OLETEXT("ksCursor"), DISPID(117));
  TAutoArgs<4> _args;
  _args[1] = info /*[VT_DISPATCH:0]*/;
  _args[2] = x /*[VT_R8:1]*/;
  _args[3] = y /*[VT_R8:1]*/;
  _args[4] = phantom /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksPlacement(LPDISPATCH info, double* x, double* y, double* angle, 
                                  LPDISPATCH phantom)
{
  _TDispID _dispid(*this, OLETEXT("ksPlacement"), DISPID(118));
  TAutoArgs<5> _args;
  _args[1] = info /*[VT_DISPATCH:0]*/;
  _args[2] = x /*[VT_R8:1]*/;
  _args[3] = y /*[VT_R8:1]*/;
  _args[4] = angle /*[VT_R8:1]*/;
  _args[5] = phantom /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksCommandWindow(LPDISPATCH info)
{
  _TDispID _dispid(*this, OLETEXT("ksCommandWindow"), DISPID(119));
  TAutoArgs<1> _args;
  _args[1] = info /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksChangeObjectInLibRequest(LPDISPATCH info, LPDISPATCH phantom)
{
  _TDispID _dispid(*this, OLETEXT("ksChangeObjectInLibRequest"), DISPID(120));
  TAutoArgs<2> _args;
  _args[1] = info /*[VT_DISPATCH:0]*/;
  _args[2] = phantom /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksReleaseReference(long p)
{
  _TDispID _dispid(*this, OLETEXT("ksReleaseReference"), DISPID(121));
  TAutoArgs<1> _args;
  _args[1] = p /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument2DDispT<T>::GetFragment()
{
  _TDispID _dispid(*this, OLETEXT("GetFragment"), DISPID(122));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksInitFilePreviewFunc(BSTR funcName, long hInst, LPDISPATCH dispatchOCX)
{
  _TDispID _dispid(*this, OLETEXT("ksInitFilePreviewFunc"), DISPID(123));
  TAutoArgs<3> _args;
  _args[1] = funcName /*[VT_BSTR:0]*/;
  _args[2] = hInst /*[VT_I4:0]*/;
  _args[3] = dispatchOCX /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksTable()
{
  _TDispID _dispid(*this, OLETEXT("ksTable"), DISPID(124));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksRebuildTableVirtualGrid()
{
  _TDispID _dispid(*this, OLETEXT("ksRebuildTableVirtualGrid"), DISPID(125));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetTableItemsCount(long type)
{
  _TDispID _dispid(*this, OLETEXT("ksGetTableItemsCount"), DISPID(126));
  TAutoArgs<1> _args;
  _args[1] = type /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetTableColumnText(long* numb, LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksGetTableColumnText"), DISPID(127));
  TAutoArgs<2> _args;
  _args[1] = numb /*[VT_I4:1]*/;
  _args[2] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksSetTableColumnText(long numb, LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksSetTableColumnText"), DISPID(128));
  TAutoArgs<2> _args;
  _args[1] = numb /*[VT_I4:0]*/;
  _args[2] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksClearTableColumnText(long numb)
{
  _TDispID _dispid(*this, OLETEXT("ksClearTableColumnText"), DISPID(129));
  TAutoArgs<1> _args;
  _args[1] = numb /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksCombineTwoTableItems(long index1, long index2)
{
  _TDispID _dispid(*this, OLETEXT("ksCombineTwoTableItems"), DISPID(130));
  TAutoArgs<2> _args;
  _args[1] = index1 /*[VT_I4:0]*/;
  _args[2] = index2 /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksDivideTableItem(long index, TOLEBOOL vertical, long style)
{
  _TDispID _dispid(*this, OLETEXT("ksDivideTableItem"), DISPID(131));
  TAutoArgs<3> _args;
  _args[1] = index /*[VT_I4:0]*/;
  _args[2] = vertical /*[VT_BOOL:0]*/;
  _args[3] = style /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksSetTableBorderStyle(long index, short typeBorder, long style)
{
  _TDispID _dispid(*this, OLETEXT("ksSetTableBorderStyle"), DISPID(132));
  TAutoArgs<3> _args;
  _args[1] = index /*[VT_I4:0]*/;
  _args[2] = typeBorder /*[VT_I2:0]*/;
  _args[3] = style /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetTableBorderStyle(long index, short typeBorder)
{
  _TDispID _dispid(*this, OLETEXT("ksGetTableBorderStyle"), DISPID(133));
  TAutoArgs<2> _args;
  _args[1] = index /*[VT_I4:0]*/;
  _args[2] = typeBorder /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksOpenTable(long table)
{
  _TDispID _dispid(*this, OLETEXT("ksOpenTable"), DISPID(134));
  TAutoArgs<1> _args;
  _args[1] = table /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksColumnNumber(long numb)
{
  _TDispID _dispid(*this, OLETEXT("ksColumnNumber"), DISPID(135));
  TAutoArgs<1> _args;
  _args[1] = numb /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksSetMacroParam(long ref, LPDISPATCH userPars, TOLEBOOL dblClickOff, 
                                      TOLEBOOL hotpoints, TOLEBOOL externEdit)
{
  _TDispID _dispid(*this, OLETEXT("ksSetMacroParam"), DISPID(136));
  TAutoArgs<5> _args;
  _args[1] = ref /*[VT_I4:0]*/;
  _args[2] = userPars /*[VT_DISPATCH:0]*/;
  _args[3] = dblClickOff /*[VT_BOOL:0]*/;
  _args[4] = hotpoints /*[VT_BOOL:0]*/;
  _args[5] = externEdit /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetMacroParam(long ref, LPDISPATCH userPars)
{
  _TDispID _dispid(*this, OLETEXT("ksGetMacroParam"), DISPID(137));
  TAutoArgs<2> _args;
  _args[1] = ref /*[VT_I4:0]*/;
  _args[2] = userPars /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksOpenTechnicalDemand(LPDISPATCH pGab, long style)
{
  _TDispID _dispid(*this, OLETEXT("ksOpenTechnicalDemand"), DISPID(138));
  TAutoArgs<2> _args;
  _args[1] = pGab /*[VT_DISPATCH:0]*/;
  _args[2] = style /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksCloseTechnicalDemand()
{
  _TDispID _dispid(*this, OLETEXT("ksCloseTechnicalDemand"), DISPID(139));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksSpecRough(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksSpecRough"), DISPID(140));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksViewPointer(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksViewPointer"), DISPID(141));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksCutLine(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksCutLine"), DISPID(142));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksApproximationCurve(long p, double eps, TOLEBOOL curentLayer, double maxRad, 
                                           TOLEBOOL smooth)
{
  _TDispID _dispid(*this, OLETEXT("ksApproximationCurve"), DISPID(143));
  TAutoArgs<5> _args;
  _args[1] = p /*[VT_I4:0]*/;
  _args[2] = eps /*[VT_R8:0]*/;
  _args[3] = curentLayer /*[VT_BOOL:0]*/;
  _args[4] = maxRad /*[VT_R8:0]*/;
  _args[5] = smooth /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksTolerance(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksTolerance"), DISPID(144));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksOpenTolerance(long tolerance)
{
  _TDispID _dispid(*this, OLETEXT("ksOpenTolerance"), DISPID(145));
  TAutoArgs<1> _args;
  _args[1] = tolerance /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetToleranceColumnText(long* numb, LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksGetToleranceColumnText"), DISPID(146));
  TAutoArgs<2> _args;
  _args[1] = numb /*[VT_I4:1]*/;
  _args[2] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksSetToleranceColumnText(long numb, LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksSetToleranceColumnText"), DISPID(147));
  TAutoArgs<2> _args;
  _args[1] = numb /*[VT_I4:0]*/;
  _args[2] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetPointOnToleranceTable(long tolerance, short entry, LPDISPATCH point)
{
  _TDispID _dispid(*this, OLETEXT("ksGetPointOnToleranceTable"), DISPID(148));
  TAutoArgs<3> _args;
  _args[1] = tolerance /*[VT_I4:0]*/;
  _args[2] = entry /*[VT_I2:0]*/;
  _args[3] = point /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument2DDispT<T>::ksOpenDocument(BSTR nameDoc, TOLEBOOL regim)
{
  _TDispID _dispid(*this, OLETEXT("ksOpenDocument"), DISPID(149));
  TAutoArgs<2> _args;
  _args[1] = nameDoc /*[VT_BSTR:0]*/;
  _args[2] = regim /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument2DDispT<T>::ksSaveDocument(BSTR fileName)
{
  _TDispID _dispid(*this, OLETEXT("ksSaveDocument"), DISPID(150));
  TAutoArgs<1> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument2DDispT<T>::ksCloseDocument()
{
  _TDispID _dispid(*this, OLETEXT("ksCloseDocument"), DISPID(151));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument2DDispT<T>::ksCreateDocument(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksCreateDocument"), DISPID(152));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument2DDispT<T>::ksMovePoint(double* x, double* y, double ang, double len)
{
  _TDispID _dispid(*this, OLETEXT("ksMovePoint"), DISPID(153));
  TAutoArgs<4> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  _args[3] = ang /*[VT_R8:0]*/;
  _args[4] = len /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksReadTableFromFile(BSTR tblFileName)
{
  _TDispID _dispid(*this, OLETEXT("ksReadTableFromFile"), DISPID(154));
  TAutoArgs<1> _args;
  _args[1] = tblFileName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksDrawKompasDocument(long HWindow, BSTR docFileName)
{
  _TDispID _dispid(*this, OLETEXT("ksDrawKompasDocument"), DISPID(155));
  TAutoArgs<2> _args;
  _args[1] = HWindow /*[VT_I4:0]*/;
  _args[2] = docFileName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksViewGetObjectArea()
{
  _TDispID _dispid(*this, OLETEXT("ksViewGetObjectArea"), DISPID(156));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetMacroPlacement(long macro, double* x, double* y, double* angl)
{
  _TDispID _dispid(*this, OLETEXT("ksGetMacroPlacement"), DISPID(157));
  TAutoArgs<4> _args;
  _args[1] = macro /*[VT_I4:0]*/;
  _args[2] = x /*[VT_R8:1]*/;
  _args[3] = y /*[VT_R8:1]*/;
  _args[4] = angl /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksSetMacroPlacement(long macro, double x, double y, double angl, long relativ)
{
  _TDispID _dispid(*this, OLETEXT("ksSetMacroPlacement"), DISPID(158));
  TAutoArgs<5> _args;
  _args[1] = macro /*[VT_I4:0]*/;
  _args[2] = x /*[VT_R8:0]*/;
  _args[3] = y /*[VT_R8:0]*/;
  _args[4] = angl /*[VT_R8:0]*/;
  _args[5] = relativ /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksDrawKompasGroup(long HWindow, long gr)
{
  _TDispID _dispid(*this, OLETEXT("ksDrawKompasGroup"), DISPID(159));
  TAutoArgs<2> _args;
  _args[1] = HWindow /*[VT_I4:0]*/;
  _args[2] = gr /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument2DDispT<T>::ksGetDocVariableArray(long p)
{
  _TDispID _dispid(*this, OLETEXT("ksGetDocVariableArray"), DISPID(160));
  TAutoArgs<1> _args;
  _args[1] = p /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksSetDocVariableArray(long obj, LPDISPATCH arr, TOLEBOOL setNote)
{
  _TDispID _dispid(*this, OLETEXT("ksSetDocVariableArray"), DISPID(161));
  TAutoArgs<3> _args;
  _args[1] = obj /*[VT_I4:0]*/;
  _args[2] = arr /*[VT_DISPATCH:0]*/;
  _args[3] = setNote /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetDocOptions(long optionsType, LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksGetDocOptions"), DISPID(162));
  TAutoArgs<2> _args;
  _args[1] = optionsType /*[VT_I4:0]*/;
  _args[2] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksSetObjConstraint(long obj, LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksSetObjConstraint"), DISPID(163));
  TAutoArgs<2> _args;
  _args[1] = obj /*[VT_I4:0]*/;
  _args[2] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument2DDispT<T>::ksGetObjConstraints(long obj)
{
  _TDispID _dispid(*this, OLETEXT("ksGetObjConstraints"), DISPID(164));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksDestroyObjConstraint(long obj, LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksDestroyObjConstraint"), DISPID(165));
  TAutoArgs<2> _args;
  _args[1] = obj /*[VT_I4:0]*/;
  _args[2] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksDocument2DDispT<T>::ksGetZona(double x, double y, long* result_)
{
  _TDispID _dispid(*this, OLETEXT("ksGetZona"), DISPID(166));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = result_ /*[VT_I4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksClearRegion(long grClear, long grRegion, TOLEBOOL inside)
{
  _TDispID _dispid(*this, OLETEXT("ksClearRegion"), DISPID(167));
  TAutoArgs<3> _args;
  _args[1] = grClear /*[VT_I4:0]*/;
  _args[2] = grRegion /*[VT_I4:0]*/;
  _args[3] = inside /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksNurbsForConicCurve(LPDISPATCH xArr, LPDISPATCH yArr, short style)
{
  _TDispID _dispid(*this, OLETEXT("ksNurbsForConicCurve"), DISPID(168));
  TAutoArgs<3> _args;
  _args[1] = xArr /*[VT_DISPATCH:0]*/;
  _args[2] = yArr /*[VT_DISPATCH:0]*/;
  _args[3] = style /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument2DDispT<T>::GetStamp()
{
  _TDispID _dispid(*this, OLETEXT("GetStamp"), DISPID(169));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksDocument2DDispT<T>::ksGetTextLength(BSTR text, long style)
{
  _TDispID _dispid(*this, OLETEXT("ksGetTextLength"), DISPID(170));
  TAutoArgs<2> _args;
  _args[1] = text /*[VT_BSTR:0]*/;
  _args[2] = style /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksDocument2DDispT<T>::ksGetTextLengthFromReference(long pText)
{
  _TDispID _dispid(*this, OLETEXT("ksGetTextLengthFromReference"), DISPID(171));
  TAutoArgs<1> _args;
  _args[1] = pText /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksZoom(double x1, double y1, double x2, double y2)
{
  _TDispID _dispid(*this, OLETEXT("ksZoom"), DISPID(172));
  TAutoArgs<4> _args;
  _args[1] = x1 /*[VT_R8:0]*/;
  _args[2] = y1 /*[VT_R8:0]*/;
  _args[3] = x2 /*[VT_R8:0]*/;
  _args[4] = y2 /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksZoomScale(double x, double y, double scale)
{
  _TDispID _dispid(*this, OLETEXT("ksZoomScale"), DISPID(173));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = scale /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksZoomPrevNextOrAll(short type)
{
  _TDispID _dispid(*this, OLETEXT("ksZoomPrevNextOrAll"), DISPID(174));
  TAutoArgs<1> _args;
  _args[1] = type /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetZoomScale(double* x, double* y, double* scale)
{
  _TDispID _dispid(*this, OLETEXT("ksGetZoomScale"), DISPID(175));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  _args[3] = scale /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksSpecificationOnSheet(short onSheet)
{
  _TDispID _dispid(*this, OLETEXT("ksSpecificationOnSheet"), DISPID(176));
  TAutoArgs<1> _args;
  _args[1] = onSheet /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument2DDispT<T>::GetSpecification()
{
  _TDispID _dispid(*this, OLETEXT("GetSpecification"), DISPID(177));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksReDrawDocPart(LPDISPATCH rect, long view)
{
  _TDispID _dispid(*this, OLETEXT("ksReDrawDocPart"), DISPID(178));
  TAutoArgs<2> _args;
  _args[1] = rect /*[VT_DISPATCH:0]*/;
  _args[2] = view /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksDocument2DDispT<T>::ksGetCursorLimit()
{
  _TDispID _dispid(*this, OLETEXT("ksGetCursorLimit"), DISPID(179));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetTextAlign(long pText)
{
  _TDispID _dispid(*this, OLETEXT("ksGetTextAlign"), DISPID(180));
  TAutoArgs<1> _args;
  _args[1] = pText /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksSetTextAlign(long pText, long align)
{
  _TDispID _dispid(*this, OLETEXT("ksSetTextAlign"), DISPID(181));
  TAutoArgs<2> _args;
  _args[1] = pText /*[VT_I4:0]*/;
  _args[2] = align /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksSetTextLineAlign(short align)
{
  _TDispID _dispid(*this, OLETEXT("ksSetTextLineAlign"), DISPID(182));
  TAutoArgs<1> _args;
  _args[1] = align /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksDestroyObjects(long gr)
{
  _TDispID _dispid(*this, OLETEXT("ksDestroyObjects"), DISPID(183));
  TAutoArgs<1> _args;
  _args[1] = gr /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument2DDispT<T>::ksEnableUndo(TOLEBOOL enabl)
{
  _TDispID _dispid(*this, OLETEXT("ksEnableUndo"), DISPID(184));
  TAutoArgs<1> _args;
  _args[1] = enabl /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksAddPowerForm(double x, double y)
{
  _TDispID _dispid(*this, OLETEXT("ksAddPowerForm"), DISPID(185));
  TAutoArgs<2> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksCreatePowerArc()
{
  _TDispID _dispid(*this, OLETEXT("ksCreatePowerArc"), DISPID(186));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksTrimNurbs(long pObj, double tMin, double tMax)
{
  _TDispID _dispid(*this, OLETEXT("ksTrimNurbs"), DISPID(187));
  TAutoArgs<3> _args;
  _args[1] = pObj /*[VT_I4:0]*/;
  _args[2] = tMin /*[VT_R8:0]*/;
  _args[3] = tMax /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksDocument2DDispT<T>::ksGetDimensionVariableName(long dimObj)
{
  _TDispID _dispid(*this, OLETEXT("ksGetDimensionVariableName"), DISPID(188));
  TAutoArgs<1> _args;
  _args[1] = dimObj /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksTrimmCurve(long curve, double x1, double y1, double x2, double y2, double x3
                                   , double y3, short deleteOldCurve)
{
  _TDispID _dispid(*this, OLETEXT("ksTrimmCurve"), DISPID(189));
  TAutoArgs<8> _args;
  _args[1] = curve /*[VT_I4:0]*/;
  _args[2] = x1 /*[VT_R8:0]*/;
  _args[3] = y1 /*[VT_R8:0]*/;
  _args[4] = x2 /*[VT_R8:0]*/;
  _args[5] = y2 /*[VT_R8:0]*/;
  _args[6] = x3 /*[VT_R8:0]*/;
  _args[7] = y3 /*[VT_R8:0]*/;
  _args[8] = deleteOldCurve /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument2DDispT<T>::SaveAsToRasterFormat(BSTR fileName, LPDISPATCH rasterPar)
{
  _TDispID _dispid(*this, OLETEXT("SaveAsToRasterFormat"), DISPID(190));
  TAutoArgs<2> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = rasterPar /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument2DDispT<T>::RasterFormatParam()
{
  _TDispID _dispid(*this, OLETEXT("RasterFormatParam"), DISPID(191));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksDocument2DDispT<T>::ksGetLeaderShelfLength(long leader, double* x, double* y)
{
  _TDispID _dispid(*this, OLETEXT("ksGetLeaderShelfLength"), DISPID(192));
  TAutoArgs<3> _args;
  _args[1] = leader /*[VT_I4:0]*/;
  _args[2] = x /*[VT_R8:1]*/;
  _args[3] = y /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksSetDocOptions(long optionsType, LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksSetDocOptions"), DISPID(193));
  TAutoArgs<2> _args;
  _args[1] = optionsType /*[VT_I4:0]*/;
  _args[2] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksAxisLine(LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksAxisLine"), DISPID(194));
  TAutoArgs<1> _args;
  _args[1] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument2DDispT<T>::SaveAsToUncompressedRasterFormat(BSTR fileName, LPDISPATCH rasterPar)
{
  _TDispID _dispid(*this, OLETEXT("SaveAsToUncompressedRasterFormat"), DISPID(195));
  TAutoArgs<2> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = rasterPar /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksCreateSheetArbitraryView(LPDISPATCH par, long* number)
{
  _TDispID _dispid(*this, OLETEXT("ksCreateSheetArbitraryView"), DISPID(196));
  TAutoArgs<2> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  _args[2] = number /*[VT_I4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument2DDispT<T>::ksCreateSheetStandartViews(LPDISPATCH par, long bitVector, double dx, 
                                                 double dy)
{
  _TDispID _dispid(*this, OLETEXT("ksCreateSheetStandartViews"), DISPID(197));
  TAutoArgs<4> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  _args[2] = bitVector /*[VT_I4:0]*/;
  _args[3] = dx /*[VT_R8:0]*/;
  _args[4] = dy /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksCreateSheetProjectionView(LPDISPATCH par, long* number, long view)
{
  _TDispID _dispid(*this, OLETEXT("ksCreateSheetProjectionView"), DISPID(198));
  TAutoArgs<3> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  _args[2] = number /*[VT_I4:1]*/;
  _args[3] = view /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksCreateSheetArrowView(LPDISPATCH par, long* number, long obj)
{
  _TDispID _dispid(*this, OLETEXT("ksCreateSheetArrowView"), DISPID(199));
  TAutoArgs<3> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  _args[2] = number /*[VT_I4:1]*/;
  _args[3] = obj /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksCreateSheetSectionView(LPDISPATCH par, long* number, long obj)
{
  _TDispID _dispid(*this, OLETEXT("ksCreateSheetSectionView"), DISPID(200));
  TAutoArgs<3> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  _args[2] = number /*[VT_I4:1]*/;
  _args[3] = obj /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksCreateSheetRemoteView(LPDISPATCH par, long* number, long obj)
{
  _TDispID _dispid(*this, OLETEXT("ksCreateSheetRemoteView"), DISPID(201));
  TAutoArgs<3> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  _args[2] = number /*[VT_I4:1]*/;
  _args[3] = obj /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument2DDispT<T>::ksRebuildDocument()
{
  _TDispID _dispid(*this, OLETEXT("ksRebuildDocument"), DISPID(202));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksRemoteElement(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksRemoteElement"), DISPID(203));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksCopyObjEx(LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksCopyObjEx"), DISPID(204));
  TAutoArgs<1> _args;
  _args[1] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::Object2DNotifyPtr __fastcall
ksDocument2DDispT<T>::GetObject2DNotify(long objType)
{
  _TDispID _dispid(*this, OLETEXT("GetObject2DNotify"), DISPID(205));
  TAutoArgs<1> _args;
  _args[1] = objType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return Kompas6api5_tlb::Object2DNotifyPtr( (LPUNKNOWN) /*[VT_UNKNOWN:1]*/_args.GetRetVariant(), false );
}

template <class T> Kompas6api5_tlb::SelectionMngNotifyPtr __fastcall
ksDocument2DDispT<T>::GetSelectionMngNotify()
{
  _TDispID _dispid(*this, OLETEXT("GetSelectionMngNotify"), DISPID(206));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return Kompas6api5_tlb::SelectionMngNotifyPtr( (LPUNKNOWN) /*[VT_UNKNOWN:1]*/_args.GetRetVariant(), false );
}

template <class T> Kompas6api5_tlb::ksObject2DNotifyResultPtr __fastcall
ksDocument2DDispT<T>::GetObject2DNotifyResult()
{
  _TDispID _dispid(*this, OLETEXT("GetObject2DNotifyResult"), DISPID(207));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksObject2DNotifyResult* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::Document2DNotifyPtr __fastcall
ksDocument2DDispT<T>::GetDocument2DNotify()
{
  _TDispID _dispid(*this, OLETEXT("GetDocument2DNotify"), DISPID(208));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return Kompas6api5_tlb::Document2DNotifyPtr( (LPUNKNOWN) /*[VT_UNKNOWN:1]*/_args.GetRetVariant(), false );
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksSetMaterialParam(LPDISPATCH material, double density)
{
  _TDispID _dispid(*this, OLETEXT("ksSetMaterialParam"), DISPID(209));
  TAutoArgs<2> _args;
  _args[1] = material /*[VT_DISPATCH:0]*/;
  _args[2] = density /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksChangeObjectsOrder(long group, long obj, int type)
{
  _TDispID _dispid(*this, OLETEXT("ksChangeObjectsOrder"), DISPID(210));
  TAutoArgs<3> _args;
  _args[1] = group /*[VT_I4:0]*/;
  _args[2] = obj /*[VT_I4:0]*/;
  _args[3] = type /*[VT_INT:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksIsSlaveSpcOpened()
{
  _TDispID _dispid(*this, OLETEXT("ksIsSlaveSpcOpened"), DISPID(211));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetMacroWaitDblClickEdit(long ref)
{
  _TDispID _dispid(*this, OLETEXT("ksGetMacroWaitDblClickEdit"), DISPID(213));
  TAutoArgs<1> _args;
  _args[1] = ref /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksSetMacroWaitDblClickEdit(long ref, long waitDblClick)
{
  _TDispID _dispid(*this, OLETEXT("ksSetMacroWaitDblClickEdit"), DISPID(214));
  TAutoArgs<2> _args;
  _args[1] = ref /*[VT_I4:0]*/;
  _args[2] = waitDblClick /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksParametrizeObjects(long obj, LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksParametrizeObjects"), DISPID(215));
  TAutoArgs<2> _args;
  _args[1] = obj /*[VT_I4:0]*/;
  _args[2] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksCursorEx(LPDISPATCH info, double* x, double* y, LPDISPATCH phantom, 
                                 LPDISPATCH processParam)
{
  _TDispID _dispid(*this, OLETEXT("ksCursorEx"), DISPID(216));
  TAutoArgs<5> _args;
  _args[1] = info /*[VT_DISPATCH:0]*/;
  _args[2] = x /*[VT_R8:1]*/;
  _args[3] = y /*[VT_R8:1]*/;
  _args[4] = phantom /*[VT_DISPATCH:0]*/;
  _args[5] = processParam /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksPlacementEx(LPDISPATCH info, double* x, double* y, double* angle, 
                                    LPDISPATCH phantom, LPDISPATCH processParam)
{
  _TDispID _dispid(*this, OLETEXT("ksPlacementEx"), DISPID(217));
  TAutoArgs<6> _args;
  _args[1] = info /*[VT_DISPATCH:0]*/;
  _args[2] = x /*[VT_R8:1]*/;
  _args[3] = y /*[VT_R8:1]*/;
  _args[4] = angle /*[VT_R8:1]*/;
  _args[5] = phantom /*[VT_DISPATCH:0]*/;
  _args[6] = processParam /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksDocument2DDispT<T>::ksCalcRasterScale(BSTR fileName, double w, double h)
{
  _TDispID _dispid(*this, OLETEXT("ksCalcRasterScale"), DISPID(218));
  TAutoArgs<3> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = w /*[VT_R8:0]*/;
  _args[3] = h /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksTextEx(LPDISPATCH txtParam, long align)
{
  _TDispID _dispid(*this, OLETEXT("ksTextEx"), DISPID(219));
  TAutoArgs<2> _args;
  _args[1] = txtParam /*[VT_DISPATCH:0]*/;
  _args[2] = align /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksColouringEx(long color, long group)
{
  _TDispID _dispid(*this, OLETEXT("ksColouringEx"), DISPID(220));
  TAutoArgs<2> _args;
  _args[1] = color /*[VT_I4:0]*/;
  _args[2] = group /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument2DDispT<T>::ksSaveDocumentEx(BSTR fileName, long SaveMode)
{
  _TDispID _dispid(*this, OLETEXT("ksSaveDocumentEx"), DISPID(221));
  TAutoArgs<2> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = SaveMode /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TVariant __fastcall
ksDocument2DDispT<T>::ksAssociationViewMatrix3D(long ViewRef)
{
  _TDispID _dispid(*this, OLETEXT("ksAssociationViewMatrix3D"), DISPID(222));
  TAutoArgs<1> _args;
  _args[1] = ViewRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument2DDispT<T>::ksPoint3DToAssociationView(long view, double x3D, double y3D, double z3D, 
                                                 double* x2D, double* y2D)
{
  _TDispID _dispid(*this, OLETEXT("ksPoint3DToAssociationView"), DISPID(223));
  TAutoArgs<6> _args;
  _args[1] = view /*[VT_I4:0]*/;
  _args[2] = x3D /*[VT_R8:0]*/;
  _args[3] = y3D /*[VT_R8:0]*/;
  _args[4] = z3D /*[VT_R8:0]*/;
  _args[5] = x2D /*[VT_R8:1]*/;
  _args[6] = y2D /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetReferenceDocumentPartEx(short t, long SheetNumb)
{
  _TDispID _dispid(*this, OLETEXT("ksGetReferenceDocumentPartEx"), DISPID(224));
  TAutoArgs<2> _args;
  _args[1] = t /*[VT_I2:0]*/;
  _args[2] = SheetNumb /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument2DDispT<T>::GetStampEx(long SheetNumb)
{
  _TDispID _dispid(*this, OLETEXT("GetStampEx"), DISPID(225));
  TAutoArgs<1> _args;
  _args[1] = SheetNumb /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetDocumentPagesCount()
{
  _TDispID _dispid(*this, OLETEXT("ksGetDocumentPagesCount"), DISPID(226));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument2DDispT<T>::ksSaveToDXF(BSTR DXFFileName)
{
  _TDispID _dispid(*this, OLETEXT("ksSaveToDXF"), DISPID(227));
  TAutoArgs<1> _args;
  _args[1] = DXFFileName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksInitFilePreviewFuncW(BSTR funcName, long hInst, LPDISPATCH dispatchOCX)
{
  _TDispID _dispid(*this, OLETEXT("ksInitFilePreviewFuncW"), DISPID(228));
  TAutoArgs<3> _args;
  _args[1] = funcName /*[VT_BSTR:0]*/;
  _args[2] = hInst /*[VT_I4:0]*/;
  _args[3] = dispatchOCX /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksChangeLeader(LPDISPATCH leaderParam)
{
  _TDispID _dispid(*this, OLETEXT("ksChangeLeader"), DISPID(229));
  TAutoArgs<1> _args;
  _args[1] = leaderParam /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument2DDispT<T>::ksGetShelfPoint(long p, long index, double* x, double* y, long paramType)
{
  _TDispID _dispid(*this, OLETEXT("ksGetShelfPoint"), DISPID(230));
  TAutoArgs<5> _args;
  _args[1] = p /*[VT_I4:0]*/;
  _args[2] = index /*[VT_I4:0]*/;
  _args[3] = x /*[VT_R8:1]*/;
  _args[4] = y /*[VT_R8:1]*/;
  _args[5] = paramType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksMakeEncloseContoursEx(long gr, double x, double y, TOLEBOOL forHatch)
{
  _TDispID _dispid(*this, OLETEXT("ksMakeEncloseContoursEx"), DISPID(231));
  TAutoArgs<4> _args;
  _args[1] = gr /*[VT_I4:0]*/;
  _args[2] = x /*[VT_R8:0]*/;
  _args[3] = y /*[VT_R8:0]*/;
  _args[4] = forHatch /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksAnnPolylineEx(LPDISPATCH par, short term1, short term2)
{
  _TDispID _dispid(*this, OLETEXT("ksAnnPolylineEx"), DISPID(232));
  TAutoArgs<3> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  _args[2] = term1 /*[VT_I2:0]*/;
  _args[3] = term2 /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksAnnEllipseArc(LPDISPATCH par, short term1, short term2)
{
  _TDispID _dispid(*this, OLETEXT("ksAnnEllipseArc"), DISPID(233));
  TAutoArgs<3> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  _args[2] = term1 /*[VT_I2:0]*/;
  _args[3] = term2 /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksAnnParEllipseArc(LPDISPATCH par, short term1, short term2)
{
  _TDispID _dispid(*this, OLETEXT("ksAnnParEllipseArc"), DISPID(234));
  TAutoArgs<3> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  _args[2] = term1 /*[VT_I2:0]*/;
  _args[3] = term2 /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksAnnCircle(double xc, double yc, double rad, long style)
{
  _TDispID _dispid(*this, OLETEXT("ksAnnCircle"), DISPID(235));
  TAutoArgs<4> _args;
  _args[1] = xc /*[VT_R8:0]*/;
  _args[2] = yc /*[VT_R8:0]*/;
  _args[3] = rad /*[VT_R8:0]*/;
  _args[4] = style /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksAnnEllipse(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksAnnEllipse"), DISPID(236));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksAnnPolyline(long style, short term1, short term2)
{
  _TDispID _dispid(*this, OLETEXT("ksAnnPolyline"), DISPID(237));
  TAutoArgs<3> _args;
  _args[1] = style /*[VT_I4:0]*/;
  _args[2] = term1 /*[VT_I2:0]*/;
  _args[3] = term2 /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksAnnTextEx(LPDISPATCH txtParam, long align)
{
  _TDispID _dispid(*this, OLETEXT("ksAnnTextEx"), DISPID(238));
  TAutoArgs<2> _args;
  _args[1] = txtParam /*[VT_DISPATCH:0]*/;
  _args[2] = align /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksAnnPoint(double x, double y, long style)
{
  _TDispID _dispid(*this, OLETEXT("ksAnnPoint"), DISPID(239));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = style /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument2DDispT<T>::ksGetAnnObjTerminators(long annObj, short* term1, short* term2)
{
  _TDispID _dispid(*this, OLETEXT("ksGetAnnObjTerminators"), DISPID(240));
  TAutoArgs<3> _args;
  _args[1] = annObj /*[VT_I4:0]*/;
  _args[2] = term1 /*[VT_I2:1]*/;
  _args[3] = term2 /*[VT_I2:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetObjectStyle(long obj)
{
  _TDispID _dispid(*this, OLETEXT("ksGetObjectStyle"), DISPID(241));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument2DDispT<T>::ksSetObjectStyle(long obj, long style)
{
  _TDispID _dispid(*this, OLETEXT("ksSetObjectStyle"), DISPID(242));
  TAutoArgs<2> _args;
  _args[1] = obj /*[VT_I4:0]*/;
  _args[2] = style /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksGetMacroPlacementEx(long macro, double* x, double* y, double* angl, 
                                            long sheetParam, long* mirrorSymmetry)
{
  _TDispID _dispid(*this, OLETEXT("ksGetMacroPlacementEx"), DISPID(243));
  TAutoArgs<6> _args;
  _args[1] = macro /*[VT_I4:0]*/;
  _args[2] = x /*[VT_R8:1]*/;
  _args[3] = y /*[VT_R8:1]*/;
  _args[4] = angl /*[VT_R8:1]*/;
  _args[5] = sheetParam /*[VT_I4:0]*/;
  _args[6] = mirrorSymmetry /*[VT_I4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument2DDispT<T>::ksSetMacroPlacementEx(long macro, double x, double y, double angl, 
                                            long relativ, long mirrorSymmetry)
{
  _TDispID _dispid(*this, OLETEXT("ksSetMacroPlacementEx"), DISPID(244));
  TAutoArgs<6> _args;
  _args[1] = macro /*[VT_I4:0]*/;
  _args[2] = x /*[VT_R8:0]*/;
  _args[3] = y /*[VT_R8:0]*/;
  _args[4] = angl /*[VT_R8:0]*/;
  _args[5] = relativ /*[VT_I4:0]*/;
  _args[6] = mirrorSymmetry /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument2DDispT<T>::ksUndoContainer(TOLEBOOL Add)
{
  _TDispID _dispid(*this, OLETEXT("ksUndoContainer"), DISPID(245));
  TAutoArgs<1> _args;
  _args[1] = Add /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksObject2DNotify
// Flags:     (4096) Dispatchable
// GUID:      {2E29C343-C521-4B0F-B37D-587D0347B7BA}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksObject2DNotifyDispT<T>::ChangeActive(long objRef)
{
  _TDispID _dispid(/* ChangeActive */ DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyDispT<T>::BeginDelete(long objRef)
{
  _TDispID _dispid(/* BeginDelete */ DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyDispT<T>::Delete(long objRef)
{
  _TDispID _dispid(/* Delete */ DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyDispT<T>::BeginMove(long objRef)
{
  _TDispID _dispid(/* BeginMove */ DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyDispT<T>::Move(long objRef)
{
  _TDispID _dispid(/* Move */ DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyDispT<T>::BeginRotate(long objRef)
{
  _TDispID _dispid(/* BeginRotate */ DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyDispT<T>::Rotate(long objRef)
{
  _TDispID _dispid(/* Rotate */ DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyDispT<T>::BeginScale(long objRef)
{
  _TDispID _dispid(/* BeginScale */ DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyDispT<T>::scale(long objRef)
{
  _TDispID _dispid(/* scale */ DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyDispT<T>::BeginTransform(long objRef)
{
  _TDispID _dispid(/* BeginTransform */ DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyDispT<T>::Transform(long objRef)
{
  _TDispID _dispid(/* Transform */ DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyDispT<T>::BeginCopy(long objRef)
{
  _TDispID _dispid(/* BeginCopy */ DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyDispT<T>::copy(long objRef)
{
  _TDispID _dispid(/* copy */ DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyDispT<T>::BeginSymmetry(long objRef)
{
  _TDispID _dispid(/* BeginSymmetry */ DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyDispT<T>::Symmetry(long objRef)
{
  _TDispID _dispid(/* Symmetry */ DISPID(15));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyDispT<T>::BeginProcess(long pType, long objRef)
{
  _TDispID _dispid(/* BeginProcess */ DISPID(16));
  TAutoArgs<2> _args;
  _args[1] = pType /*[VT_I4:0]*/;
  _args[2] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyDispT<T>::EndProcess(long pType)
{
  _TDispID _dispid(/* EndProcess */ DISPID(17));
  TAutoArgs<1> _args;
  _args[1] = pType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyDispT<T>::CreateObject(long objRef)
{
  _TDispID _dispid(/* CreateObject */ DISPID(18));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyDispT<T>::UpdateObject(long objRef)
{
  _TDispID _dispid(/* UpdateObject */ DISPID(19));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyDispT<T>::BeginDestroyObject(long objRef)
{
  _TDispID _dispid(/* BeginDestroyObject */ DISPID(20));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyDispT<T>::DestroyObject(long objRef)
{
  _TDispID _dispid(/* DestroyObject */ DISPID(21));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSelectionMngNotify
// Flags:     (4096) Dispatchable
// GUID:      {A421368A-34B6-4DDF-9A52-73B3488EE83F}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksSelectionMngNotifyDispT<T>::Select(TVariant obj)
{
  _TDispID _dispid(/* Select */ DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_VARIANT:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSelectionMngNotifyDispT<T>::Unselect(TVariant obj)
{
  _TDispID _dispid(/* Unselect */ DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_VARIANT:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSelectionMngNotifyDispT<T>::UnselectAll()
{
  _TDispID _dispid(/* UnselectAll */ DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksObject2DNotifyResult
// Flags:     (4096) Dispatchable
// GUID:      {1FE1EB28-CD28-4700-8E46-25CCFE9C0EC8}
// *********************************************************************//
template <class T> long __fastcall
ksObject2DNotifyResultDispT<T>::GetNotifyType()
{
  _TDispID _dispid(*this, OLETEXT("GetNotifyType"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyResultDispT<T>::IsCopy()
{
  _TDispID _dispid(*this, OLETEXT("IsCopy"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyResultDispT<T>::GetSheetPoint(TOLEBOOL from, double* x, double* y)
{
  _TDispID _dispid(*this, OLETEXT("GetSheetPoint"), DISPID(3));
  TAutoArgs<3> _args;
  _args[1] = from /*[VT_BOOL:0]*/;
  _args[2] = x /*[VT_R8:1]*/;
  _args[3] = y /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksObject2DNotifyResultDispT<T>::GetCopyObject()
{
  _TDispID _dispid(*this, OLETEXT("GetCopyObject"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksObject2DNotifyResultDispT<T>::GetAngle()
{
  _TDispID _dispid(*this, OLETEXT("GetAngle"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyResultDispT<T>::GetScale(double* sx, double* sy)
{
  _TDispID _dispid(*this, OLETEXT("GetScale"), DISPID(6));
  TAutoArgs<2> _args;
  _args[1] = sx /*[VT_R8:1]*/;
  _args[2] = sy /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksObject2DNotifyResultDispT<T>::GetProcessType()
{
  _TDispID _dispid(*this, OLETEXT("GetProcessType"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyResultDispT<T>::IsUndoMode()
{
  _TDispID _dispid(*this, OLETEXT("IsUndoMode"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject2DNotifyResultDispT<T>::IsRedoMode()
{
  _TDispID _dispid(*this, OLETEXT("IsRedoMode"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksDocument2DNotify
// Flags:     (4096) Dispatchable
// GUID:      {13F0BE95-3361-4AD9-90AF-D935EA64A127}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksDocument2DNotifyDispT<T>::BeginRebuild()
{
  _TDispID _dispid(/* BeginRebuild */ DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument2DNotifyDispT<T>::Rebuild()
{
  _TDispID _dispid(/* Rebuild */ DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument2DNotifyDispT<T>::BeginChoiceMaterial()
{
  _TDispID _dispid(/* BeginChoiceMaterial */ DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument2DNotifyDispT<T>::ChoiceMaterial(BSTR material, double density)
{
  _TDispID _dispid(/* ChoiceMaterial */ DISPID(4));
  TAutoArgs<2> _args;
  _args[1] = material /*[VT_BSTR:0]*/;
  _args[2] = density /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument2DNotifyDispT<T>::BeginInsertFragment()
{
  _TDispID _dispid(/* BeginInsertFragment */ DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument2DNotifyDispT<T>::LocalFragmentEdit(LPDISPATCH newDoc, TOLEBOOL newFrw)
{
  _TDispID _dispid(/* LocalFragmentEdit */ DISPID(6));
  TAutoArgs<2> _args;
  _args[1] = newDoc /*[VT_DISPATCH:0]*/;
  _args[2] = newFrw /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksDocument3D
// Flags:     (4096) Dispatchable
// GUID:      {111CEFE1-A0A7-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksDocument3DDispT<T>::set_fileName(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("fileName"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksDocument3DDispT<T>::get_fileName()
{
  _TDispID _dispid(*this, OLETEXT("fileName"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocument3DDispT<T>::set_comment(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("comment"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksDocument3DDispT<T>::get_comment()
{
  _TDispID _dispid(*this, OLETEXT("comment"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocument3DDispT<T>::set_author(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("author"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksDocument3DDispT<T>::get_author()
{
  _TDispID _dispid(*this, OLETEXT("author"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocument3DDispT<T>::set_reference(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("reference"), DISPID(39));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksDocument3DDispT<T>::get_reference()
{
  _TDispID _dispid(*this, OLETEXT("reference"), DISPID(39));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocument3DDispT<T>::set_perspective(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("perspective"), DISPID(40));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksDocument3DDispT<T>::get_perspective()
{
  _TDispID _dispid(*this, OLETEXT("perspective"), DISPID(40));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocument3DDispT<T>::set_drawMode(int /*[VT_INT:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("drawMode"), DISPID(41));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> int /*[VT_INT:0]*/ __fastcall
ksDocument3DDispT<T>::get_drawMode()
{
  _TDispID _dispid(*this, OLETEXT("drawMode"), DISPID(41));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocument3DDispT<T>::set_hideAllPlanes(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("hideAllPlanes"), DISPID(50));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksDocument3DDispT<T>::get_hideAllPlanes()
{
  _TDispID _dispid(*this, OLETEXT("hideAllPlanes"), DISPID(50));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocument3DDispT<T>::set_hideAllAxis(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("hideAllAxis"), DISPID(51));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksDocument3DDispT<T>::get_hideAllAxis()
{
  _TDispID _dispid(*this, OLETEXT("hideAllAxis"), DISPID(51));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocument3DDispT<T>::set_hideAllSketches(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("hideAllSketches"), DISPID(52));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksDocument3DDispT<T>::get_hideAllSketches()
{
  _TDispID _dispid(*this, OLETEXT("hideAllSketches"), DISPID(52));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocument3DDispT<T>::set_hideAllPlaces(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("hideAllPlaces"), DISPID(53));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksDocument3DDispT<T>::get_hideAllPlaces()
{
  _TDispID _dispid(*this, OLETEXT("hideAllPlaces"), DISPID(53));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocument3DDispT<T>::set_hideAllSurfaces(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("hideAllSurfaces"), DISPID(54));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksDocument3DDispT<T>::get_hideAllSurfaces()
{
  _TDispID _dispid(*this, OLETEXT("hideAllSurfaces"), DISPID(54));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocument3DDispT<T>::set_hideAllThreads(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("hideAllThreads"), DISPID(55));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksDocument3DDispT<T>::get_hideAllThreads()
{
  _TDispID _dispid(*this, OLETEXT("hideAllThreads"), DISPID(55));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocument3DDispT<T>::set_shadedWireframe(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("shadedWireframe"), DISPID(63));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksDocument3DDispT<T>::get_shadedWireframe()
{
  _TDispID _dispid(*this, OLETEXT("shadedWireframe"), DISPID(63));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocument3DDispT<T>::set_dismantleMode(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("dismantleMode"), DISPID(68));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksDocument3DDispT<T>::get_dismantleMode()
{
  _TDispID _dispid(*this, OLETEXT("dismantleMode"), DISPID(68));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocument3DDispT<T>::set_treeNeedRebuild(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("treeNeedRebuild"), DISPID(70));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksDocument3DDispT<T>::get_treeNeedRebuild()
{
  _TDispID _dispid(*this, OLETEXT("treeNeedRebuild"), DISPID(70));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocument3DDispT<T>::set_enableRollBackFeaturesInCollections(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("enableRollBackFeaturesInCollections"), DISPID(75));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksDocument3DDispT<T>::get_enableRollBackFeaturesInCollections()
{
  _TDispID _dispid(*this, OLETEXT("enableRollBackFeaturesInCollections"), DISPID(75));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocument3DDispT<T>::set_hideAllCurves(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("hideAllCurves"), DISPID(77));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksDocument3DDispT<T>::get_hideAllCurves()
{
  _TDispID _dispid(*this, OLETEXT("hideAllCurves"), DISPID(77));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocument3DDispT<T>::set_hideAllControlPoints(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("hideAllControlPoints"), DISPID(78));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksDocument3DDispT<T>::get_hideAllControlPoints()
{
  _TDispID _dispid(*this, OLETEXT("hideAllControlPoints"), DISPID(78));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocument3DDispT<T>::set_hideAllDimensions(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("hideAllDimensions"), DISPID(79));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksDocument3DDispT<T>::get_hideAllDimensions()
{
  _TDispID _dispid(*this, OLETEXT("hideAllDimensions"), DISPID(79));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocument3DDispT<T>::set_hideAllDesignations(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("hideAllDesignations"), DISPID(80));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksDocument3DDispT<T>::get_hideAllDesignations()
{
  _TDispID _dispid(*this, OLETEXT("hideAllDesignations"), DISPID(80));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocument3DDispT<T>::set_hideAllAuxiliaryGeom(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("hideAllAuxiliaryGeom"), DISPID(81));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksDocument3DDispT<T>::get_hideAllAuxiliaryGeom()
{
  _TDispID _dispid(*this, OLETEXT("hideAllAuxiliaryGeom"), DISPID(81));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocument3DDispT<T>::set_hideInComponentsMode(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("hideInComponentsMode"), DISPID(82));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksDocument3DDispT<T>::get_hideInComponentsMode()
{
  _TDispID _dispid(*this, OLETEXT("hideInComponentsMode"), DISPID(82));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocument3DDispT<T>::set_windowNeedRebuild(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("windowNeedRebuild"), DISPID(84));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksDocument3DDispT<T>::get_windowNeedRebuild()
{
  _TDispID _dispid(*this, OLETEXT("windowNeedRebuild"), DISPID(84));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::get_invisibleMode()
{
  _TDispID _dispid(*this, OLETEXT("invisibleMode"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::Create(TOLEBOOL invisible/*[def,opt]*/, TOLEBOOL typeDoc/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("Create"), DISPID(5));
  TAutoArgs<2> _args;
  _args[1] = invisible /*[VT_BOOL:0]*/;
  _args[2] = typeDoc /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::IsDetail()
{
  _TDispID _dispid(*this, OLETEXT("IsDetail"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument3DDispT<T>::GetPart(long type)
{
  _TDispID _dispid(*this, OLETEXT("GetPart"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = type /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument3DDispT<T>::MateConstraintCollection()
{
  _TDispID _dispid(*this, OLETEXT("MateConstraintCollection"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::UpdateDocumentParam()
{
  _TDispID _dispid(*this, OLETEXT("UpdateDocumentParam"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::IsEditMode()
{
  _TDispID _dispid(*this, OLETEXT("IsEditMode"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::ChangeObjectInLibRequest()
{
  _TDispID _dispid(*this, OLETEXT("ChangeObjectInLibRequest"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::StopLibRequest()
{
  _TDispID _dispid(*this, OLETEXT("StopLibRequest"), DISPID(12));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument3DDispT<T>::GetSpecification()
{
  _TDispID _dispid(*this, OLETEXT("GetSpecification"), DISPID(13));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument3DDispT<T>::GetRequestInfo(LPDISPATCH part)
{
  _TDispID _dispid(*this, OLETEXT("GetRequestInfo"), DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = part /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::UserGetPlacementAndEntity(long entityCount)
{
  _TDispID _dispid(*this, OLETEXT("UserGetPlacementAndEntity"), DISPID(15));
  TAutoArgs<1> _args;
  _args[1] = entityCount /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::SetActive()
{
  _TDispID _dispid(*this, OLETEXT("SetActive"), DISPID(16));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::IsActive()
{
  _TDispID _dispid(*this, OLETEXT("IsActive"), DISPID(17));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::Open(BSTR fileName, TOLEBOOL invisible/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("Open"), DISPID(18));
  TAutoArgs<2> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = invisible /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::Save()
{
  _TDispID _dispid(*this, OLETEXT("Save"), DISPID(19));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::SaveAs(BSTR fileName)
{
  _TDispID _dispid(*this, OLETEXT("SaveAs"), DISPID(20));
  TAutoArgs<1> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::close()
{
  _TDispID _dispid(*this, OLETEXT("close"), DISPID(21));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::UserGetCursor(BSTR prompt, double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("UserGetCursor"), DISPID(22));
  TAutoArgs<4> _args;
  _args[1] = prompt /*[VT_BSTR:0]*/;
  _args[2] = x /*[VT_R8:1]*/;
  _args[3] = y /*[VT_R8:1]*/;
  _args[4] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::SetPartFromFile(BSTR fileName, LPDISPATCH part, 
                                      TOLEBOOL externalFile/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetPartFromFile"), DISPID(23));
  TAutoArgs<3> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = part /*[VT_DISPATCH:0]*/;
  _args[3] = externalFile /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument3DDispT<T>::EntityCollection(short objType/*[def,opt]*/, TOLEBOOL checkEntity/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("EntityCollection"), DISPID(24));
  TAutoArgs<2> _args;
  _args[1] = objType /*[VT_I2:0]*/;
  _args[2] = checkEntity /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument3DDispT<T>::UserSelectEntity(LPDISPATCH filterObject, BSTR methodName, BSTR prompt, 
                                       long hInst/*[def,opt]*/, LPDISPATCH val/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("UserSelectEntity"), DISPID(25));
  TAutoArgs<5> _args;
  _args[1] = filterObject /*[VT_DISPATCH:0]*/;
  _args[2] = methodName /*[VT_BSTR:0]*/;
  _args[3] = prompt /*[VT_BSTR:0]*/;
  _args[4] = hInst /*[VT_I4:0]*/;
  _args[5] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::RemoveMateConstraint(long constraintType, LPDISPATCH obj1, LPDISPATCH obj2)
{
  _TDispID _dispid(*this, OLETEXT("RemoveMateConstraint"), DISPID(26));
  TAutoArgs<3> _args;
  _args[1] = constraintType /*[VT_I4:0]*/;
  _args[2] = obj1 /*[VT_DISPATCH:0]*/;
  _args[3] = obj2 /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::AddMateConstraint(long constraintType, LPDISPATCH obj1, LPDISPATCH obj2, 
                                        short direction/*[def,opt]*/, short fixed/*[def,opt]*/, 
                                        double val/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("AddMateConstraint"), DISPID(27));
  TAutoArgs<6> _args;
  _args[1] = constraintType /*[VT_I4:0]*/;
  _args[2] = obj1 /*[VT_DISPATCH:0]*/;
  _args[3] = obj2 /*[VT_DISPATCH:0]*/;
  _args[4] = direction /*[VT_I2:0]*/;
  _args[5] = fixed /*[VT_I2:0]*/;
  _args[6] = val /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument3DDispT<T>::ksDeleteObj(long ref)
{
  _TDispID _dispid(*this, OLETEXT("ksDeleteObj"), DISPID(28));
  TAutoArgs<1> _args;
  _args[1] = ref /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument3DDispT<T>::PartCollection(TOLEBOOL refresh)
{
  _TDispID _dispid(*this, OLETEXT("PartCollection"), DISPID(29));
  TAutoArgs<1> _args;
  _args[1] = refresh /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::CreatePartFromFile(BSTR fileName, LPDISPATCH part, LPDISPATCH plane)
{
  _TDispID _dispid(*this, OLETEXT("CreatePartFromFile"), DISPID(30));
  TAutoArgs<3> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = part /*[VT_DISPATCH:0]*/;
  _args[3] = plane /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument3DDispT<T>::CreatePartInAssembly(BSTR fileName, LPDISPATCH plane)
{
  _TDispID _dispid(*this, OLETEXT("CreatePartInAssembly"), DISPID(31));
  TAutoArgs<2> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = plane /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::RebuildDocument()
{
  _TDispID _dispid(*this, OLETEXT("RebuildDocument"), DISPID(32));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::ZoomPrevNextOrAll(short type)
{
  _TDispID _dispid(*this, OLETEXT("ZoomPrevNextOrAll"), DISPID(33));
  TAutoArgs<1> _args;
  _args[1] = type /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument3DDispT<T>::GetMateConstraint()
{
  _TDispID _dispid(*this, OLETEXT("GetMateConstraint"), DISPID(34));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::SaveAsToRasterFormat(BSTR fileName, LPDISPATCH rasterPar)
{
  _TDispID _dispid(*this, OLETEXT("SaveAsToRasterFormat"), DISPID(35));
  TAutoArgs<2> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = rasterPar /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument3DDispT<T>::RasterFormatParam()
{
  _TDispID _dispid(*this, OLETEXT("RasterFormatParam"), DISPID(36));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::SaveAsToAdditionFormat(BSTR fileName, LPDISPATCH additionPar)
{
  _TDispID _dispid(*this, OLETEXT("SaveAsToAdditionFormat"), DISPID(37));
  TAutoArgs<2> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = additionPar /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument3DDispT<T>::AdditionFormatParam()
{
  _TDispID _dispid(*this, OLETEXT("AdditionFormatParam"), DISPID(38));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument3DDispT<T>::GetViewProjectionCollection()
{
  _TDispID _dispid(*this, OLETEXT("GetViewProjectionCollection"), DISPID(42));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::DeleteObject(LPDISPATCH obj)
{
  _TDispID _dispid(*this, OLETEXT("DeleteObject"), DISPID(43));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument3DDispT<T>::GetSelectionMng()
{
  _TDispID _dispid(*this, OLETEXT("GetSelectionMng"), DISPID(44));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument3DDispT<T>::GetChooseMng()
{
  _TDispID _dispid(*this, OLETEXT("GetChooseMng"), DISPID(45));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument3DDispT<T>::GetObjectType(LPDISPATCH obj)
{
  _TDispID _dispid(*this, OLETEXT("GetObjectType"), DISPID(46));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument3DDispT<T>::ksGetObjParam(long ref, LPDISPATCH param, long parType/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("ksGetObjParam"), DISPID(47));
  TAutoArgs<3> _args;
  _args[1] = ref /*[VT_I4:0]*/;
  _args[2] = param /*[VT_DISPATCH:0]*/;
  _args[3] = parType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument3DDispT<T>::ksSetObjParam(long referObj, LPDISPATCH param, long parType/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("ksSetObjParam"), DISPID(48));
  TAutoArgs<3> _args;
  _args[1] = referObj /*[VT_I4:0]*/;
  _args[2] = param /*[VT_DISPATCH:0]*/;
  _args[3] = parType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::SaveAsToUncompressedRasterFormat(BSTR fileName, LPDISPATCH rasterPar)
{
  _TDispID _dispid(*this, OLETEXT("SaveAsToUncompressedRasterFormat"), DISPID(49));
  TAutoArgs<2> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = rasterPar /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument3DDispT<T>::AddImportedSurfaces(BSTR fileName, TOLEBOOL together)
{
  _TDispID _dispid(*this, OLETEXT("AddImportedSurfaces"), DISPID(56));
  TAutoArgs<2> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = together /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::Document3DNotifyPtr __fastcall
ksDocument3DDispT<T>::GetDocument3DNotify()
{
  _TDispID _dispid(*this, OLETEXT("GetDocument3DNotify"), DISPID(57));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return Kompas6api5_tlb::Document3DNotifyPtr( (LPUNKNOWN) /*[VT_UNKNOWN:1]*/_args.GetRetVariant(), false );
}

template <class T> Kompas6api5_tlb::ksAttribute3DCollectionPtr __fastcall
ksDocument3DDispT<T>::AttributeCollection(long key1, long key2, long key3, long key4, double numb, 
                                          LPDISPATCH pObj)
{
  _TDispID _dispid(*this, OLETEXT("AttributeCollection"), DISPID(58));
  TAutoArgs<6> _args;
  _args[1] = key1 /*[VT_I4:0]*/;
  _args[2] = key2 /*[VT_I4:0]*/;
  _args[3] = key3 /*[VT_I4:0]*/;
  _args[4] = key4 /*[VT_I4:0]*/;
  _args[5] = numb /*[VT_R8:0]*/;
  _args[6] = pObj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksAttribute3DCollection* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksFeatureCollectionPtr __fastcall
ksDocument3DDispT<T>::FeatureCollection(long key1, long key2, long key3, long key4, double numb, 
                                        int objType)
{
  _TDispID _dispid(*this, OLETEXT("FeatureCollection"), DISPID(59));
  TAutoArgs<6> _args;
  _args[1] = key1 /*[VT_I4:0]*/;
  _args[2] = key2 /*[VT_I4:0]*/;
  _args[3] = key3 /*[VT_I4:0]*/;
  _args[4] = key4 /*[VT_I4:0]*/;
  _args[5] = numb /*[VT_R8:0]*/;
  _args[6] = objType /*[VT_INT:0]*/;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksFeatureCollection* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::SetPartFromFileEx(BSTR fileName, LPDISPATCH part, 
                                        TOLEBOOL externalFile/*[def,opt]*/, 
                                        TOLEBOOL redraw/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetPartFromFileEx"), DISPID(60));
  TAutoArgs<4> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = part /*[VT_DISPATCH:0]*/;
  _args[3] = externalFile /*[VT_BOOL:0]*/;
  _args[4] = redraw /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksComponentPositionerPtr __fastcall
ksDocument3DDispT<T>::ComponentPositioner()
{
  _TDispID _dispid(*this, OLETEXT("ComponentPositioner"), DISPID(61));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksComponentPositioner* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksPlacementPtr __fastcall
ksDocument3DDispT<T>::DefaultPlacement()
{
  _TDispID _dispid(*this, OLETEXT("DefaultPlacement"), DISPID(62));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksPlacement* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument3DDispT<T>::ksIsSlaveSpcOpened()
{
  _TDispID _dispid(*this, OLETEXT("ksIsSlaveSpcOpened"), DISPID(64));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument3DDispT<T>::GetEditMacroObject()
{
  _TDispID _dispid(*this, OLETEXT("GetEditMacroObject"), DISPID(65));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::SaveAsEx(BSTR fileName, long SaveMode)
{
  _TDispID _dispid(*this, OLETEXT("SaveAsEx"), DISPID(66));
  TAutoArgs<2> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = SaveMode /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument3DDispT<T>::GetInterface(long o3dType)
{
  _TDispID _dispid(*this, OLETEXT("GetInterface"), DISPID(67));
  TAutoArgs<1> _args;
  _args[1] = o3dType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument3DDispT<T>::CopyPart(LPDISPATCH sourcePart, LPDISPATCH newPlacement)
{
  _TDispID _dispid(*this, OLETEXT("CopyPart"), DISPID(69));
  TAutoArgs<2> _args;
  _args[1] = sourcePart /*[VT_DISPATCH:0]*/;
  _args[2] = newPlacement /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument3DDispT<T>::UserSelectEntityEx(LPDISPATCH filterObject, BSTR methodName, BSTR prompt, 
                                         long hInst/*[def,opt]*/, LPDISPATCH val/*[def,opt]*/, 
                                         LPUNKNOWN processParam)
{
  _TDispID _dispid(*this, OLETEXT("UserSelectEntityEx"), DISPID(71));
  TAutoArgs<6> _args;
  _args[1] = filterObject /*[VT_DISPATCH:0]*/;
  _args[2] = methodName /*[VT_BSTR:0]*/;
  _args[3] = prompt /*[VT_BSTR:0]*/;
  _args[4] = hInst /*[VT_I4:0]*/;
  _args[5] = val /*[VT_DISPATCH:0]*/;
  _args[6] = processParam /*[VT_UNKNOWN:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::PlaceFeatureAfter(LPDISPATCH obj, LPDISPATCH afterObj)
{
  _TDispID _dispid(*this, OLETEXT("PlaceFeatureAfter"), DISPID(72));
  TAutoArgs<2> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  _args[2] = afterObj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::SetRollBackFeature(LPDISPATCH obj)
{
  _TDispID _dispid(*this, OLETEXT("SetRollBackFeature"), DISPID(73));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument3DDispT<T>::GetRollBackFeature()
{
  _TDispID _dispid(*this, OLETEXT("GetRollBackFeature"), DISPID(74));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DDispT<T>::ExcludeFeaturesAfter(LPDISPATCH obj, TOLEBOOL exclude)
{
  _TDispID _dispid(*this, OLETEXT("ExcludeFeaturesAfter"), DISPID(76));
  TAutoArgs<2> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  _args[2] = exclude /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument3DDispT<T>::GetDocument3DNotifyResult()
{
  _TDispID _dispid(*this, OLETEXT("GetDocument3DNotifyResult"), DISPID(83));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksDocument3DNotify
// Flags:     (4096) Dispatchable
// GUID:      {B6C1BCFD-68DA-4A0A-A95C-296084C6A01A}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksDocument3DNotifyDispT<T>::BeginRebuild()
{
  _TDispID _dispid(/* BeginRebuild */ DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DNotifyDispT<T>::Rebuild()
{
  _TDispID _dispid(/* Rebuild */ DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DNotifyDispT<T>::BeginChoiceMaterial()
{
  _TDispID _dispid(/* BeginChoiceMaterial */ DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DNotifyDispT<T>::ChoiceMaterial(BSTR material, double density)
{
  _TDispID _dispid(/* ChoiceMaterial */ DISPID(4));
  TAutoArgs<2> _args;
  _args[1] = material /*[VT_BSTR:0]*/;
  _args[2] = density /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DNotifyDispT<T>::BeginChoiceMarking()
{
  _TDispID _dispid(/* BeginChoiceMarking */ DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DNotifyDispT<T>::ChoiceMarking(BSTR marking)
{
  _TDispID _dispid(/* ChoiceMarking */ DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = marking /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DNotifyDispT<T>::BeginSetPartFromFile()
{
  _TDispID _dispid(/* BeginSetPartFromFile */ DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocument3DNotifyDispT<T>::BeginCreatePartFromFile(TOLEBOOL typeDoc, 
                                                    Kompas6api5_tlb::ksEntityPtr plane)
{
  _TDispID _dispid(/* BeginCreatePartFromFile */ DISPID(8));
  TAutoArgs<2> _args;
  _args[1] = typeDoc /*[VT_BOOL:0]*/;
  _args[2] = (LPDISPATCH)(Kompas6api5_tlb::ksEntity*)plane /*[VT_USERDEFINED:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksEntity
// Flags:     (4096) Dispatchable
// GUID:      {508A0CCA-9D74-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksEntityDispT<T>::set_hidden(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("hidden"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksEntityDispT<T>::get_hidden()
{
  _TDispID _dispid(*this, OLETEXT("hidden"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEntityDispT<T>::set_name(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksEntityDispT<T>::get_name()
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEntityDispT<T>::set_excluded(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("excluded"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksEntityDispT<T>::get_excluded()
{
  _TDispID _dispid(*this, OLETEXT("excluded"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> short __fastcall
ksEntityDispT<T>::get_type()
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEntityDispT<T>::GetDefinition()
{
  _TDispID _dispid(*this, OLETEXT("GetDefinition"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEntityDispT<T>::GetParent()
{
  _TDispID _dispid(*this, OLETEXT("GetParent"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEntityDispT<T>::IsCreated()
{
  _TDispID _dispid(*this, OLETEXT("IsCreated"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEntityDispT<T>::IsIt(long objType)
{
  _TDispID _dispid(*this, OLETEXT("IsIt"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = objType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEntityDispT<T>::Create()
{
  _TDispID _dispid(*this, OLETEXT("Create"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEntityDispT<T>::_Update()
{
  _TDispID _dispid(*this, OLETEXT("Update"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEntityDispT<T>::ColorParam()
{
  _TDispID _dispid(*this, OLETEXT("ColorParam"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEntityDispT<T>::GetAdvancedColor(long* color, double* ambient, double* diffuse, 
                                   double* specularity, double* shininess, double* transparency, 
                                   double* emission)
{
  _TDispID _dispid(*this, OLETEXT("GetAdvancedColor"), DISPID(12));
  TAutoArgs<7> _args;
  _args[1] = color /*[VT_I4:1]*/;
  _args[2] = ambient /*[VT_R8:1]*/;
  _args[3] = diffuse /*[VT_R8:1]*/;
  _args[4] = specularity /*[VT_R8:1]*/;
  _args[5] = shininess /*[VT_R8:1]*/;
  _args[6] = transparency /*[VT_R8:1]*/;
  _args[7] = emission /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEntityDispT<T>::SetAdvancedColor(long color, double ambient/*[def,opt]*/, 
                                   double diffuse/*[def,opt]*/, double specularity/*[def,opt]*/, 
                                   double shininess/*[def,opt]*/, double transparency/*[def,opt]*/, 
                                   double emission/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetAdvancedColor"), DISPID(13));
  TAutoArgs<7> _args;
  _args[1] = color /*[VT_I4:0]*/;
  _args[2] = ambient /*[VT_R8:0]*/;
  _args[3] = diffuse /*[VT_R8:0]*/;
  _args[4] = specularity /*[VT_R8:0]*/;
  _args[5] = shininess /*[VT_R8:0]*/;
  _args[6] = transparency /*[VT_R8:0]*/;
  _args[7] = emission /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEntityDispT<T>::GetFeature()
{
  _TDispID _dispid(*this, OLETEXT("GetFeature"), DISPID(14));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEntityDispT<T>::BodyCollection()
{
  _TDispID _dispid(*this, OLETEXT("BodyCollection"), DISPID(15));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEntityDispT<T>::get_MultiBodyParts()
{
  _TDispID _dispid(*this, OLETEXT("MultiBodyParts"), DISPID(16));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEntityDispT<T>::GetBodyParts()
{
  _TDispID _dispid(*this, OLETEXT("GetBodyParts"), DISPID(17));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksAttribute3DCollection
// Flags:     (4096) Dispatchable
// GUID:      {EB61A981-F63E-47E1-BEE8-2D1612C78E78}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksAttribute3DCollectionDispT<T>::refresh()
{
  _TDispID _dispid(*this, OLETEXT("refresh"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksAttribute3DCollectionDispT<T>::GetCount()
{
  _TDispID _dispid(*this, OLETEXT("GetCount"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksAttribute3DPtr __fastcall
ksAttribute3DCollectionDispT<T>::First()
{
  _TDispID _dispid(*this, OLETEXT("First"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksAttribute3D* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksAttribute3DPtr __fastcall
ksAttribute3DCollectionDispT<T>::Last()
{
  _TDispID _dispid(*this, OLETEXT("Last"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksAttribute3D* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksAttribute3DPtr __fastcall
ksAttribute3DCollectionDispT<T>::Next()
{
  _TDispID _dispid(*this, OLETEXT("Next"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksAttribute3D* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksAttribute3DPtr __fastcall
ksAttribute3DCollectionDispT<T>::Prev()
{
  _TDispID _dispid(*this, OLETEXT("Prev"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksAttribute3D* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksAttribute3DPtr __fastcall
ksAttribute3DCollectionDispT<T>::GetByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetByIndex"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksAttribute3D* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> long __fastcall
ksAttribute3DCollectionDispT<T>::FindIt(Kompas6api5_tlb::ksAttribute3DPtr obj)
{
  _TDispID _dispid(*this, OLETEXT("FindIt"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksAttribute3D*)obj /*[VT_USERDEFINED:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksAttribute3DCollectionDispT<T>::Select(long key1, long key2, long key3, long key4, double numb, 
                                        long objType)
{
  _TDispID _dispid(*this, OLETEXT("Select"), DISPID(9));
  TAutoArgs<6> _args;
  _args[1] = key1 /*[VT_I4:0]*/;
  _args[2] = key2 /*[VT_I4:0]*/;
  _args[3] = key3 /*[VT_I4:0]*/;
  _args[4] = key4 /*[VT_I4:0]*/;
  _args[5] = numb /*[VT_R8:0]*/;
  _args[6] = objType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksAttribute3D
// Flags:     (4096) Dispatchable
// GUID:      {3EEB2B43-56FF-49C0-AFCF-69E990A7D84C}
// *********************************************************************//
template <class T> long __fastcall
ksAttribute3DDispT<T>::get_reference()
{
  _TDispID _dispid(*this, OLETEXT("reference"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksFeatureCollectionPtr __fastcall
ksAttribute3DDispT<T>::FeatureCollection(long objType)
{
  _TDispID _dispid(*this, OLETEXT("FeatureCollection"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = objType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksFeatureCollection* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksAttribute3DDispT<T>::get_nameType()
{
  _TDispID _dispid(*this, OLETEXT("nameType"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksFeatureCollection
// Flags:     (4096) Dispatchable
// GUID:      {CE6A46FF-02B4-4C7E-AF50-3F3707C8B122}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksFeatureCollectionDispT<T>::refresh()
{
  _TDispID _dispid(*this, OLETEXT("refresh"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksFeatureCollectionDispT<T>::GetCount()
{
  _TDispID _dispid(*this, OLETEXT("GetCount"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksFeaturePtr __fastcall
ksFeatureCollectionDispT<T>::First()
{
  _TDispID _dispid(*this, OLETEXT("First"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksFeature* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksFeaturePtr __fastcall
ksFeatureCollectionDispT<T>::Last()
{
  _TDispID _dispid(*this, OLETEXT("Last"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksFeature* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksFeaturePtr __fastcall
ksFeatureCollectionDispT<T>::Next()
{
  _TDispID _dispid(*this, OLETEXT("Next"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksFeature* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksFeaturePtr __fastcall
ksFeatureCollectionDispT<T>::Prev()
{
  _TDispID _dispid(*this, OLETEXT("Prev"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksFeature* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksFeaturePtr __fastcall
ksFeatureCollectionDispT<T>::GetByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetByIndex"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksFeature* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksFeaturePtr __fastcall
ksFeatureCollectionDispT<T>::GetByName(BSTR name, TOLEBOOL testFullName/*[def,opt]*/, 
                                       TOLEBOOL testIgnoreCase/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("GetByName"), DISPID(8));
  TAutoArgs<3> _args;
  _args[1] = name /*[VT_BSTR:0]*/;
  _args[2] = testFullName /*[VT_BOOL:0]*/;
  _args[3] = testIgnoreCase /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksFeature* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> long __fastcall
ksFeatureCollectionDispT<T>::FindIt(Kompas6api5_tlb::ksFeaturePtr entity)
{
  _TDispID _dispid(*this, OLETEXT("FindIt"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksFeature*)entity /*[VT_USERDEFINED:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksFeatureCollectionDispT<T>::Add(Kompas6api5_tlb::ksFeaturePtr obj)
{
  _TDispID _dispid(*this, OLETEXT("Add"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksFeature*)obj /*[VT_USERDEFINED:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksFeatureCollectionDispT<T>::AddAt(Kompas6api5_tlb::ksFeaturePtr obj, long index)
{
  _TDispID _dispid(*this, OLETEXT("AddAt"), DISPID(11));
  TAutoArgs<2> _args;
  _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksFeature*)obj /*[VT_USERDEFINED:1]*/;
  _args[2] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksFeatureCollectionDispT<T>::AddBefore(Kompas6api5_tlb::ksFeaturePtr obj, 
                                       Kompas6api5_tlb::ksFeaturePtr base)
{
  _TDispID _dispid(*this, OLETEXT("AddBefore"), DISPID(12));
  TAutoArgs<2> _args;
  _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksFeature*)obj /*[VT_USERDEFINED:1]*/;
  _args[2] = (LPDISPATCH)(Kompas6api5_tlb::ksFeature*)base /*[VT_USERDEFINED:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksFeatureCollectionDispT<T>::DetachByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("DetachByIndex"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksFeatureCollectionDispT<T>::DetachByBody(Kompas6api5_tlb::ksFeaturePtr obj)
{
  _TDispID _dispid(*this, OLETEXT("DetachByBody"), DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksFeature*)obj /*[VT_USERDEFINED:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksFeatureCollectionDispT<T>::Clear()
{
  _TDispID _dispid(*this, OLETEXT("Clear"), DISPID(15));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksFeatureCollectionDispT<T>::SetByIndex(Kompas6api5_tlb::ksFeaturePtr obj, long index)
{
  _TDispID _dispid(*this, OLETEXT("SetByIndex"), DISPID(16));
  TAutoArgs<2> _args;
  _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksFeature*)obj /*[VT_USERDEFINED:1]*/;
  _args[2] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksAttribute3DCollectionPtr __fastcall
ksFeatureCollectionDispT<T>::AttributeCollection(long key1, long key2, long key3, long key4, 
                                                 double numb)
{
  _TDispID _dispid(*this, OLETEXT("AttributeCollection"), DISPID(17));
  TAutoArgs<5> _args;
  _args[1] = key1 /*[VT_I4:0]*/;
  _args[2] = key2 /*[VT_I4:0]*/;
  _args[3] = key3 /*[VT_I4:0]*/;
  _args[4] = key4 /*[VT_I4:0]*/;
  _args[5] = numb /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksAttribute3DCollection* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksFeature
// Flags:     (4096) Dispatchable
// GUID:      {088BF9A8-37D3-4B15-A7CA-8C52FF1DBC41}
// *********************************************************************//
template <class T> void __fastcall
ksFeatureDispT<T>::set_excluded(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("excluded"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksFeatureDispT<T>::get_excluded()
{
  _TDispID _dispid(*this, OLETEXT("excluded"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksFeatureDispT<T>::get_name()
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> unsigned_long __fastcall
ksFeatureDispT<T>::get_updateStamp()
{
  _TDispID _dispid(*this, OLETEXT("updateStamp"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksFeatureDispT<T>::IsModified(TOLEBOOL recursive)
{
  _TDispID _dispid(*this, OLETEXT("IsModified"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = recursive /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksFeatureDispT<T>::SubFeatureCollection(TOLEBOOL through, TOLEBOOL libObject)
{
  _TDispID _dispid(*this, OLETEXT("SubFeatureCollection"), DISPID(4));
  TAutoArgs<2> _args;
  _args[1] = through /*[VT_BOOL:0]*/;
  _args[2] = libObject /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksFeatureDispT<T>::GetOwnerFeature()
{
  _TDispID _dispid(*this, OLETEXT("GetOwnerFeature"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksFeatureDispT<T>::IsValid()
{
  _TDispID _dispid(*this, OLETEXT("IsValid"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> short __fastcall
ksFeatureDispT<T>::get_type()
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksFeatureDispT<T>::GetObject()
{
  _TDispID _dispid(*this, OLETEXT("GetObject"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksAttribute3DCollectionPtr __fastcall
ksFeatureDispT<T>::AttributeCollection(long key1, long key2, long key3, long key4, double numb)
{
  _TDispID _dispid(*this, OLETEXT("AttributeCollection"), DISPID(10));
  TAutoArgs<5> _args;
  _args[1] = key1 /*[VT_I4:0]*/;
  _args[2] = key2 /*[VT_I4:0]*/;
  _args[3] = key3 /*[VT_I4:0]*/;
  _args[4] = key4 /*[VT_I4:0]*/;
  _args[5] = numb /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksAttribute3DCollection* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksEntityCollectionPtr __fastcall
ksFeatureDispT<T>::EntityCollection(short objType)
{
  _TDispID _dispid(*this, OLETEXT("EntityCollection"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = objType /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksEntityCollection* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksFeatureDispT<T>::get_VariableCollection()
{
  _TDispID _dispid(*this, OLETEXT("VariableCollection"), DISPID(12));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksFeatureDispT<T>::BodyCollection()
{
  _TDispID _dispid(*this, OLETEXT("BodyCollection"), DISPID(13));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksAttribute3DCollectionPtr __fastcall
ksFeatureDispT<T>::GetAttributeCollectionInSource(long key1, long key2, long key3, long key4, 
                                                  double numb, Kompas6api5_tlb::ksPartPtr sourcePart)
{
  _TDispID _dispid(*this, OLETEXT("GetAttributeCollectionInSource"), DISPID(14));
  TAutoArgs<6> _args;
  _args[1] = key1 /*[VT_I4:0]*/;
  _args[2] = key2 /*[VT_I4:0]*/;
  _args[3] = key3 /*[VT_I4:0]*/;
  _args[4] = key4 /*[VT_I4:0]*/;
  _args[5] = numb /*[VT_R8:0]*/;
  _args[6] = (LPDISPATCH)(Kompas6api5_tlb::ksPart*)sourcePart /*[VT_USERDEFINED:1]*/;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksAttribute3DCollection* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksFeatureDispT<T>::IsRollBacked()
{
  _TDispID _dispid(*this, OLETEXT("IsRollBacked"), DISPID(15));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksFeatureDispT<T>::VariableCollectionEx(TOLEBOOL sourse)
{
  _TDispID _dispid(*this, OLETEXT("VariableCollectionEx"), DISPID(16));
  TAutoArgs<1> _args;
  _args[1] = sourse /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksFeatureDispT<T>::get_objectError()
{
  _TDispID _dispid(*this, OLETEXT("objectError"), DISPID(17));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksEntityCollection
// Flags:     (4096) Dispatchable
// GUID:      {B0170141-C02C-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksEntityCollectionDispT<T>::refresh()
{
  _TDispID _dispid(*this, OLETEXT("refresh"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksEntityCollectionDispT<T>::GetCount()
{
  _TDispID _dispid(*this, OLETEXT("GetCount"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEntityCollectionDispT<T>::First()
{
  _TDispID _dispid(*this, OLETEXT("First"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEntityCollectionDispT<T>::Last()
{
  _TDispID _dispid(*this, OLETEXT("Last"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEntityCollectionDispT<T>::Next()
{
  _TDispID _dispid(*this, OLETEXT("Next"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEntityCollectionDispT<T>::Prev()
{
  _TDispID _dispid(*this, OLETEXT("Prev"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEntityCollectionDispT<T>::GetByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetByIndex"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEntityCollectionDispT<T>::SelectByPoint(double x, double y, double z)
{
  _TDispID _dispid(*this, OLETEXT("SelectByPoint"), DISPID(8));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = z /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEntityCollectionDispT<T>::GetByName(BSTR name, TOLEBOOL testFullName/*[def,opt]*/, 
                                      TOLEBOOL testIgnoreCase/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("GetByName"), DISPID(9));
  TAutoArgs<3> _args;
  _args[1] = name /*[VT_BSTR:0]*/;
  _args[2] = testFullName /*[VT_BOOL:0]*/;
  _args[3] = testIgnoreCase /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEntityCollectionDispT<T>::Add(LPDISPATCH entity)
{
  _TDispID _dispid(*this, OLETEXT("Add"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEntityCollectionDispT<T>::AddAt(LPDISPATCH entity, long index)
{
  _TDispID _dispid(*this, OLETEXT("AddAt"), DISPID(11));
  TAutoArgs<2> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  _args[2] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEntityCollectionDispT<T>::AddBefore(LPDISPATCH entity, LPDISPATCH base)
{
  _TDispID _dispid(*this, OLETEXT("AddBefore"), DISPID(12));
  TAutoArgs<2> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  _args[2] = base /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEntityCollectionDispT<T>::DetachByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("DetachByIndex"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEntityCollectionDispT<T>::DetachByBody(LPDISPATCH entity)
{
  _TDispID _dispid(*this, OLETEXT("DetachByBody"), DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEntityCollectionDispT<T>::Clear()
{
  _TDispID _dispid(*this, OLETEXT("Clear"), DISPID(15));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEntityCollectionDispT<T>::SetByIndex(LPDISPATCH entity, long index)
{
  _TDispID _dispid(*this, OLETEXT("SetByIndex"), DISPID(16));
  TAutoArgs<2> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  _args[2] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksEntityCollectionDispT<T>::FindIt(LPDISPATCH entity)
{
  _TDispID _dispid(*this, OLETEXT("FindIt"), DISPID(17));
  TAutoArgs<1> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksPart
// Flags:     (4096) Dispatchable
// GUID:      {508A0CCD-9D74-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksPartDispT<T>::set_name(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksPartDispT<T>::get_name()
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksPartDispT<T>::set_marking(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("marking"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksPartDispT<T>::get_marking()
{
  _TDispID _dispid(*this, OLETEXT("marking"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksPartDispT<T>::set_fixedComponent(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("fixedComponent"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksPartDispT<T>::get_fixedComponent()
{
  _TDispID _dispid(*this, OLETEXT("fixedComponent"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksPartDispT<T>::set_standardComponent(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("standardComponent"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksPartDispT<T>::get_standardComponent()
{
  _TDispID _dispid(*this, OLETEXT("standardComponent"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksPartDispT<T>::set_fileName(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("fileName"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksPartDispT<T>::get_fileName()
{
  _TDispID _dispid(*this, OLETEXT("fileName"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksPartDispT<T>::set_excluded(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("excluded"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksPartDispT<T>::get_excluded()
{
  _TDispID _dispid(*this, OLETEXT("excluded"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksPartDispT<T>::set_useColor(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("useColor"), DISPID(38));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksPartDispT<T>::get_useColor()
{
  _TDispID _dispid(*this, OLETEXT("useColor"), DISPID(38));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksPartDispT<T>::set_needRebuild(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("needRebuild"), DISPID(43));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksPartDispT<T>::get_needRebuild()
{
  _TDispID _dispid(*this, OLETEXT("needRebuild"), DISPID(43));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksPartDispT<T>::set_hidden(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("hidden"), DISPID(46));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksPartDispT<T>::get_hidden()
{
  _TDispID _dispid(*this, OLETEXT("hidden"), DISPID(46));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksPartDispT<T>::set_DoubleClickEditOff(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("DoubleClickEditOff"), DISPID(52));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksPartDispT<T>::get_DoubleClickEditOff()
{
  _TDispID _dispid(*this, OLETEXT("DoubleClickEditOff"), DISPID(52));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksPartDispT<T>::get_material()
{
  _TDispID _dispid(*this, OLETEXT("material"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartDispT<T>::SetPlacement(LPDISPATCH placement)
{
  _TDispID _dispid(*this, OLETEXT("SetPlacement"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = placement /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPartDispT<T>::GetPlacement()
{
  _TDispID _dispid(*this, OLETEXT("GetPlacement"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPartDispT<T>::ColorParam()
{
  _TDispID _dispid(*this, OLETEXT("ColorParam"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPartDispT<T>::VariableCollection()
{
  _TDispID _dispid(*this, OLETEXT("VariableCollection"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartDispT<T>::_Update()
{
  _TDispID _dispid(*this, OLETEXT("Update"), DISPID(12));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksPartDispT<T>::GetUserParamSize()
{
  _TDispID _dispid(*this, OLETEXT("GetUserParamSize"), DISPID(13));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartDispT<T>::UpdatePlacement()
{
  _TDispID _dispid(*this, OLETEXT("UpdatePlacement"), DISPID(14));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartDispT<T>::RebuildModel()
{
  _TDispID _dispid(*this, OLETEXT("RebuildModel"), DISPID(15));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPartDispT<T>::GetDefaultEntity(short objType)
{
  _TDispID _dispid(*this, OLETEXT("GetDefaultEntity"), DISPID(16));
  TAutoArgs<1> _args;
  _args[1] = objType /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPartDispT<T>::NewEntity(short objType)
{
  _TDispID _dispid(*this, OLETEXT("NewEntity"), DISPID(17));
  TAutoArgs<1> _args;
  _args[1] = objType /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPartDispT<T>::EntityCollection(short objType)
{
  _TDispID _dispid(*this, OLETEXT("EntityCollection"), DISPID(18));
  TAutoArgs<1> _args;
  _args[1] = objType /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartDispT<T>::GetAdvancedColor(long* color, double* ambient, double* diffuse, double* specularity
                                 , double* shininess, double* transparency, double* emission)
{
  _TDispID _dispid(*this, OLETEXT("GetAdvancedColor"), DISPID(19));
  TAutoArgs<7> _args;
  _args[1] = color /*[VT_I4:1]*/;
  _args[2] = ambient /*[VT_R8:1]*/;
  _args[3] = diffuse /*[VT_R8:1]*/;
  _args[4] = specularity /*[VT_R8:1]*/;
  _args[5] = shininess /*[VT_R8:1]*/;
  _args[6] = transparency /*[VT_R8:1]*/;
  _args[7] = emission /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartDispT<T>::SetAdvancedColor(long color, double ambient/*[def,opt]*/, 
                                 double diffuse/*[def,opt]*/, double specularity/*[def,opt]*/, 
                                 double shininess/*[def,opt]*/, double transparency/*[def,opt]*/, 
                                 double emission/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetAdvancedColor"), DISPID(20));
  TAutoArgs<7> _args;
  _args[1] = color /*[VT_I4:0]*/;
  _args[2] = ambient /*[VT_R8:0]*/;
  _args[3] = diffuse /*[VT_R8:0]*/;
  _args[4] = specularity /*[VT_R8:0]*/;
  _args[5] = shininess /*[VT_R8:0]*/;
  _args[6] = transparency /*[VT_R8:0]*/;
  _args[7] = emission /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartDispT<T>::SetUserParam(LPDISPATCH userPars)
{
  _TDispID _dispid(*this, OLETEXT("SetUserParam"), DISPID(21));
  TAutoArgs<1> _args;
  _args[1] = userPars /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartDispT<T>::IsDetail()
{
  _TDispID _dispid(*this, OLETEXT("IsDetail"), DISPID(22));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPartDispT<T>::BeginEdit()
{
  _TDispID _dispid(*this, OLETEXT("BeginEdit"), DISPID(23));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartDispT<T>::EndEdit(TOLEBOOL Rebuild)
{
  _TDispID _dispid(*this, OLETEXT("EndEdit"), DISPID(24));
  TAutoArgs<1> _args;
  _args[1] = Rebuild /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPartDispT<T>::GetPart(short type)
{
  _TDispID _dispid(*this, OLETEXT("GetPart"), DISPID(25));
  TAutoArgs<1> _args;
  _args[1] = type /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksPartDispT<T>::GetMass()
{
  _TDispID _dispid(*this, OLETEXT("GetMass"), DISPID(26));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartDispT<T>::PutStorage(BSTR fileName, long type, TOLEBOOL mirror)
{
  _TDispID _dispid(*this, OLETEXT("PutStorage"), DISPID(27));
  TAutoArgs<3> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = type /*[VT_I4:0]*/;
  _args[3] = mirror /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartDispT<T>::SetMateConstraintObjects(LPDISPATCH collection)
{
  _TDispID _dispid(*this, OLETEXT("SetMateConstraintObjects"), DISPID(28));
  TAutoArgs<1> _args;
  _args[1] = collection /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPartDispT<T>::GetMateConstraintObjects()
{
  _TDispID _dispid(*this, OLETEXT("GetMateConstraintObjects"), DISPID(29));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartDispT<T>::GetUserParam(LPDISPATCH userPars)
{
  _TDispID _dispid(*this, OLETEXT("GetUserParam"), DISPID(30));
  TAutoArgs<1> _args;
  _args[1] = userPars /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksPartDispT<T>::get_density()
{
  _TDispID _dispid(*this, OLETEXT("density"), DISPID(31));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartDispT<T>::SetMaterial(BSTR material, double density)
{
  _TDispID _dispid(*this, OLETEXT("SetMaterial"), DISPID(32));
  TAutoArgs<2> _args;
  _args[1] = material /*[VT_BSTR:0]*/;
  _args[2] = density /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPartDispT<T>::BodyCollection()
{
  _TDispID _dispid(*this, OLETEXT("BodyCollection"), DISPID(33));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPartDispT<T>::GetFeature()
{
  _TDispID _dispid(*this, OLETEXT("GetFeature"), DISPID(34));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPartDispT<T>::CalcMassInertiaProperties(unsigned_long bitVector)
{
  _TDispID _dispid(*this, OLETEXT("CalcMassInertiaProperties"), DISPID(35));
  TAutoArgs<1> _args;
  _args[1] = bitVector /*[VT_UI4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPartDispT<T>::GetMeasurer()
{
  _TDispID _dispid(*this, OLETEXT("GetMeasurer"), DISPID(36));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPartDispT<T>::GetMainBody()
{
  _TDispID _dispid(*this, OLETEXT("GetMainBody"), DISPID(37));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::Object3DNotifyPtr __fastcall
ksPartDispT<T>::GetObject3DNotify(long objType, LPDISPATCH obj)
{
  _TDispID _dispid(*this, OLETEXT("GetObject3DNotify"), DISPID(39));
  TAutoArgs<2> _args;
  _args[1] = objType /*[VT_I4:0]*/;
  _args[2] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return Kompas6api5_tlb::Object3DNotifyPtr( (LPUNKNOWN) /*[VT_UNKNOWN:1]*/_args.GetRetVariant(), false );
}

template <class T> Kompas6api5_tlb::ksObject3DNotifyResultPtr __fastcall
ksPartDispT<T>::GetObject3DNotifyResult()
{
  _TDispID _dispid(*this, OLETEXT("GetObject3DNotifyResult"), DISPID(40));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksObject3DNotifyResult* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartDispT<T>::UpdatePlacementEx(TOLEBOOL redraw)
{
  _TDispID _dispid(*this, OLETEXT("UpdatePlacementEx"), DISPID(41));
  TAutoArgs<1> _args;
  _args[1] = redraw /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartDispT<T>::RebuildModelEx(TOLEBOOL redraw)
{
  _TDispID _dispid(*this, OLETEXT("RebuildModelEx"), DISPID(42));
  TAutoArgs<1> _args;
  _args[1] = redraw /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartDispT<T>::CurveIntersection(LPDISPATCH curve, LPDISPATCH parts, LPDISPATCH fases, 
                                  LPDISPATCH points)
{
  _TDispID _dispid(*this, OLETEXT("CurveIntersection"), DISPID(44));
  TAutoArgs<4> _args;
  _args[1] = curve /*[VT_DISPATCH:0]*/;
  _args[2] = parts /*[VT_DISPATCH:0]*/;
  _args[3] = fases /*[VT_DISPATCH:0]*/;
  _args[4] = points /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartDispT<T>::TransformPoint(double* x, double* y, double* z, LPDISPATCH part1)
{
  _TDispID _dispid(*this, OLETEXT("TransformPoint"), DISPID(45));
  TAutoArgs<4> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  _args[3] = z /*[VT_R8:1]*/;
  _args[4] = part1 /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartDispT<T>::SetObject(long index, LPDISPATCH obj)
{
  _TDispID _dispid(*this, OLETEXT("SetObject"), DISPID(47));
  TAutoArgs<2> _args;
  _args[1] = index /*[VT_I4:0]*/;
  _args[2] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPartDispT<T>::GetObject(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetObject"), DISPID(48));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksPartDispT<T>::GetCountObj()
{
  _TDispID _dispid(*this, OLETEXT("GetCountObj"), DISPID(49));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartDispT<T>::ClearAllObj()
{
  _TDispID _dispid(*this, OLETEXT("ClearAllObj"), DISPID(50));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPartDispT<T>::CreateOrEditObject(short objType, LPDISPATCH editObj)
{
  _TDispID _dispid(*this, OLETEXT("CreateOrEditObject"), DISPID(51));
  TAutoArgs<2> _args;
  _args[1] = objType /*[VT_I2:0]*/;
  _args[2] = editObj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartDispT<T>::TransformPoints(TVariant* points, LPDISPATCH part1)
{
  _TDispID _dispid(*this, OLETEXT("TransformPoints"), DISPID(53));
  TAutoArgs<2> _args;
  _args[1] = points /*[VT_VARIANT:1]*/;
  _args[2] = part1 /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TVariant __fastcall
ksPartDispT<T>::GetSummMatrix(LPDISPATCH part1)
{
  _TDispID _dispid(*this, OLETEXT("GetSummMatrix"), DISPID(54));
  TAutoArgs<1> _args;
  _args[1] = part1 /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartDispT<T>::get_MultiBodyParts()
{
  _TDispID _dispid(*this, OLETEXT("MultiBodyParts"), DISPID(55));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartDispT<T>::SetSourceVariables(TOLEBOOL Rebuild)
{
  _TDispID _dispid(*this, OLETEXT("SetSourceVariables"), DISPID(56));
  TAutoArgs<1> _args;
  _args[1] = Rebuild /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPartDispT<T>::GetObjectByName(BSTR name, short objType, TOLEBOOL testFullName, 
                                TOLEBOOL testIgnoreCase)
{
  _TDispID _dispid(*this, OLETEXT("GetObjectByName"), DISPID(57));
  TAutoArgs<4> _args;
  _args[1] = name /*[VT_BSTR:0]*/;
  _args[2] = objType /*[VT_I2:0]*/;
  _args[3] = testFullName /*[VT_BOOL:0]*/;
  _args[4] = testIgnoreCase /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartDispT<T>::GetGabarit(TOLEBOOL full, TOLEBOOL customizable, double* x1, double* y1, double* z1
                           , double* x2, double* y2, double* z2)
{
  _TDispID _dispid(*this, OLETEXT("GetGabarit"), DISPID(58));
  TAutoArgs<8> _args;
  _args[1] = full /*[VT_BOOL:0]*/;
  _args[2] = customizable /*[VT_BOOL:0]*/;
  _args[3] = x1 /*[VT_R8:1]*/;
  _args[4] = y1 /*[VT_R8:1]*/;
  _args[5] = z1 /*[VT_R8:1]*/;
  _args[6] = x2 /*[VT_R8:1]*/;
  _args[7] = y2 /*[VT_R8:1]*/;
  _args[8] = z2 /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}
// *********************************************************************//
// DispIntf:  ksObject3DNotify
// Flags:     (4096) Dispatchable
// GUID:      {BFA024B6-679E-4A95-B6C2-1EA47A7CD0E9}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksObject3DNotifyDispT<T>::BeginDelete(LPDISPATCH obj)
{
  _TDispID _dispid(/* BeginDelete */ DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject3DNotifyDispT<T>::Delete(LPDISPATCH obj)
{
  _TDispID _dispid(/* Delete */ DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject3DNotifyDispT<T>::excluded(LPDISPATCH obj, TOLEBOOL excluded)
{
  _TDispID _dispid(/* excluded */ DISPID(3));
  TAutoArgs<2> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  _args[2] = excluded /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject3DNotifyDispT<T>::hidden(LPDISPATCH obj, TOLEBOOL _hidden)
{
  _TDispID _dispid(/* hidden */ DISPID(4));
  TAutoArgs<2> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  _args[2] = _hidden /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject3DNotifyDispT<T>::BeginPropertyChanged(LPDISPATCH obj)
{
  _TDispID _dispid(/* BeginPropertyChanged */ DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject3DNotifyDispT<T>::PropertyChanged(LPDISPATCH obj)
{
  _TDispID _dispid(/* PropertyChanged */ DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject3DNotifyDispT<T>::BeginPlacementChanged(LPDISPATCH obj)
{
  _TDispID _dispid(/* BeginPlacementChanged */ DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject3DNotifyDispT<T>::PlacementChanged(LPDISPATCH obj)
{
  _TDispID _dispid(/* PlacementChanged */ DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject3DNotifyDispT<T>::BeginProcess(long pType, LPDISPATCH obj)
{
  _TDispID _dispid(/* BeginProcess */ DISPID(9));
  TAutoArgs<2> _args;
  _args[1] = pType /*[VT_I4:0]*/;
  _args[2] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject3DNotifyDispT<T>::EndProcess(long pType)
{
  _TDispID _dispid(/* EndProcess */ DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = pType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject3DNotifyDispT<T>::CreateObject(LPDISPATCH obj)
{
  _TDispID _dispid(/* CreateObject */ DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksObject3DNotifyDispT<T>::UpdateObject(LPDISPATCH obj)
{
  _TDispID _dispid(/* UpdateObject */ DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksObject3DNotifyResult
// Flags:     (4096) Dispatchable
// GUID:      {9C3ECC92-E72F-4892-8921-7886F34CA9AD}
// *********************************************************************//
template <class T> long __fastcall
ksObject3DNotifyResultDispT<T>::GetNotifyType()
{
  _TDispID _dispid(*this, OLETEXT("GetNotifyType"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksFeatureCollectionPtr __fastcall
ksObject3DNotifyResultDispT<T>::GetFeatureCollection()
{
  _TDispID _dispid(*this, OLETEXT("GetFeatureCollection"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksFeatureCollection* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksPlacementPtr __fastcall
ksObject3DNotifyResultDispT<T>::GetPlacement()
{
  _TDispID _dispid(*this, OLETEXT("GetPlacement"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksPlacement* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> long __fastcall
ksObject3DNotifyResultDispT<T>::GetProcessType()
{
  _TDispID _dispid(*this, OLETEXT("GetProcessType"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksPlacement
// Flags:     (4096) Dispatchable
// GUID:      {2DFACC64-C4A4-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksPlacementDispT<T>::GetOrigin(double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetOrigin"), DISPID(1));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  _args[3] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPlacementDispT<T>::SetOrigin(double x, double y, double z)
{
  _TDispID _dispid(*this, OLETEXT("SetOrigin"), DISPID(2));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = z /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPlacementDispT<T>::GetAxis(double* x, double* y, double* z, long type)
{
  _TDispID _dispid(*this, OLETEXT("GetAxis"), DISPID(3));
  TAutoArgs<4> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  _args[3] = z /*[VT_R8:1]*/;
  _args[4] = type /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPlacementDispT<T>::SetAxis(double x, double y, double z, long type)
{
  _TDispID _dispid(*this, OLETEXT("SetAxis"), DISPID(4));
  TAutoArgs<4> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = z /*[VT_R8:0]*/;
  _args[4] = type /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPlacementDispT<T>::SetPlacement(LPDISPATCH placement)
{
  _TDispID _dispid(*this, OLETEXT("SetPlacement"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = placement /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPlacementDispT<T>::SetAxes(double Xx, double Xy, double Xz, double Yx, double Yy, double Yz)
{
  _TDispID _dispid(*this, OLETEXT("SetAxes"), DISPID(6));
  TAutoArgs<6> _args;
  _args[1] = Xx /*[VT_R8:0]*/;
  _args[2] = Xy /*[VT_R8:0]*/;
  _args[3] = Xz /*[VT_R8:0]*/;
  _args[4] = Yx /*[VT_R8:0]*/;
  _args[5] = Yy /*[VT_R8:0]*/;
  _args[6] = Yz /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPlacementDispT<T>::PointProjection(double XIn, double YIn, double ZIn, double* XOut, double* YOut)
{
  _TDispID _dispid(*this, OLETEXT("PointProjection"), DISPID(7));
  TAutoArgs<5> _args;
  _args[1] = XIn /*[VT_R8:0]*/;
  _args[2] = YIn /*[VT_R8:0]*/;
  _args[3] = ZIn /*[VT_R8:0]*/;
  _args[4] = XOut /*[VT_R8:1]*/;
  _args[5] = YOut /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPlacementDispT<T>::PointOn(double XIn, double YIn, double* XOut, double* YOut, double* ZOut)
{
  _TDispID _dispid(*this, OLETEXT("PointOn"), DISPID(8));
  TAutoArgs<5> _args;
  _args[1] = XIn /*[VT_R8:0]*/;
  _args[2] = YIn /*[VT_R8:0]*/;
  _args[3] = XOut /*[VT_R8:1]*/;
  _args[4] = YOut /*[VT_R8:1]*/;
  _args[5] = ZOut /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksComponentPositioner
// Flags:     (4096) Dispatchable
// GUID:      {508B5962-DF59-4CEE-8611-AD10FDF0C811}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksComponentPositionerDispT<T>::SetPlaneByPlacement(Kompas6api5_tlb::ksPlacementPtr plane)
{
  _TDispID _dispid(*this, OLETEXT("SetPlaneByPlacement"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksPlacement*)plane /*[VT_USERDEFINED:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksComponentPositionerDispT<T>::SetPlane(LPDISPATCH plane)
{
  _TDispID _dispid(*this, OLETEXT("SetPlane"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = plane /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksComponentPositionerDispT<T>::SetPlaneByPoints(double x1, double y1, double z1, double x2, 
                                                double y2, double z2, double x3, double y3, 
                                                double z3)
{
  _TDispID _dispid(*this, OLETEXT("SetPlaneByPoints"), DISPID(3));
  TAutoArgs<9> _args;
  _args[1] = x1 /*[VT_R8:0]*/;
  _args[2] = y1 /*[VT_R8:0]*/;
  _args[3] = z1 /*[VT_R8:0]*/;
  _args[4] = x2 /*[VT_R8:0]*/;
  _args[5] = y2 /*[VT_R8:0]*/;
  _args[6] = z2 /*[VT_R8:0]*/;
  _args[7] = x3 /*[VT_R8:0]*/;
  _args[8] = y3 /*[VT_R8:0]*/;
  _args[9] = z3 /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksComponentPositionerDispT<T>::SetDragPoint(double x, double y, double z)
{
  _TDispID _dispid(*this, OLETEXT("SetDragPoint"), DISPID(4));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = z /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksComponentPositionerDispT<T>::SetAxis(LPDISPATCH axis)
{
  _TDispID _dispid(*this, OLETEXT("SetAxis"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = axis /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksComponentPositionerDispT<T>::SetAxisByPoints(double x1, double y1, double z1, double x2, double y2
                                               , double z2)
{
  _TDispID _dispid(*this, OLETEXT("SetAxisByPoints"), DISPID(6));
  TAutoArgs<6> _args;
  _args[1] = x1 /*[VT_R8:0]*/;
  _args[2] = y1 /*[VT_R8:0]*/;
  _args[3] = z1 /*[VT_R8:0]*/;
  _args[4] = x2 /*[VT_R8:0]*/;
  _args[5] = y2 /*[VT_R8:0]*/;
  _args[6] = z2 /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksComponentPositionerDispT<T>::Prepare(Kompas6api5_tlb::ksPartPtr part, long positionerType)
{
  _TDispID _dispid(*this, OLETEXT("Prepare"), DISPID(7));
  TAutoArgs<2> _args;
  _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksPart*)part /*[VT_USERDEFINED:1]*/;
  _args[2] = positionerType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksComponentPositionerDispT<T>::MoveComponent(double x, double y, double z)
{
  _TDispID _dispid(*this, OLETEXT("MoveComponent"), DISPID(8));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = z /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksComponentPositionerDispT<T>::RotateComponent(double angl)
{
  _TDispID _dispid(*this, OLETEXT("RotateComponent"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = angl /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksComponentPositionerDispT<T>::Finish()
{
  _TDispID _dispid(*this, OLETEXT("Finish"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksKompasObjectNotify
// Flags:     (4096) Dispatchable
// GUID:      {C7CB743A-C59D-4C27-8CB6-971C2A393F2F}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksKompasObjectNotifyDispT<T>::CreateDocument(LPDISPATCH newDoc, long docType)
{
  _TDispID _dispid(/* CreateDocument */ DISPID(1));
  TAutoArgs<2> _args;
  _args[1] = newDoc /*[VT_DISPATCH:0]*/;
  _args[2] = docType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksKompasObjectNotifyDispT<T>::BeginOpenDocument(BSTR fileName)
{
  _TDispID _dispid(/* BeginOpenDocument */ DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksKompasObjectNotifyDispT<T>::OpenDocument(LPDISPATCH newDoc, long docType)
{
  _TDispID _dispid(/* OpenDocument */ DISPID(3));
  TAutoArgs<2> _args;
  _args[1] = newDoc /*[VT_DISPATCH:0]*/;
  _args[2] = docType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksKompasObjectNotifyDispT<T>::ChangeActiveDocument(LPDISPATCH newDoc, long docType)
{
  _TDispID _dispid(/* ChangeActiveDocument */ DISPID(4));
  TAutoArgs<2> _args;
  _args[1] = newDoc /*[VT_DISPATCH:0]*/;
  _args[2] = docType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksKompasObjectNotifyDispT<T>::ApplicationDestroy()
{
  _TDispID _dispid(/* ApplicationDestroy */ DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksKompasObjectNotifyDispT<T>::BeginCreate(long docType)
{
  _TDispID _dispid(/* BeginCreate */ DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = docType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksKompasObjectNotifyDispT<T>::BeginOpenFile()
{
  _TDispID _dispid(/* BeginOpenFile */ DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksKompasObjectNotifyDispT<T>::BeginCloseAllDocument()
{
  _TDispID _dispid(/* BeginCloseAllDocument */ DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksKompasObjectNotifyDispT<T>::KeyDown(long* key/*[in,out]*/, long flags/*[in]*/, TOLEBOOL systemKey)
{
  _TDispID _dispid(/* KeyDown */ DISPID(9));
  TAutoArgs<3> _args;
  _args[1] = key /*[VT_I4:1]*/;
  _args[2] = flags /*[VT_I4:0]*/;
  _args[3] = systemKey /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksKompasObjectNotifyDispT<T>::KeyUp(long* key/*[in,out]*/, long flags/*[in]*/, TOLEBOOL systemKey)
{
  _TDispID _dispid(/* KeyUp */ DISPID(10));
  TAutoArgs<3> _args;
  _args[1] = key /*[VT_I4:1]*/;
  _args[2] = flags /*[VT_I4:0]*/;
  _args[3] = systemKey /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksKompasObjectNotifyDispT<T>::KeyPress(long* key/*[in,out]*/, TOLEBOOL systemKey)
{
  _TDispID _dispid(/* KeyPress */ DISPID(11));
  TAutoArgs<2> _args;
  _args[1] = key /*[VT_I4:1]*/;
  _args[2] = systemKey /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksKompasObjectNotifyDispT<T>::BeginReguestFiles(long requestID, TVariant* files)
{
  _TDispID _dispid(/* BeginReguestFiles */ DISPID(12));
  TAutoArgs<2> _args;
  _args[1] = requestID /*[VT_I4:0]*/;
  _args[2] = files /*[VT_VARIANT:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksDocumentFileNotify
// Flags:     (4096) Dispatchable
// GUID:      {324C1A45-67AD-41FB-BE57-624F930646F1}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksDocumentFileNotifyDispT<T>::BeginCloseDocument()
{
  _TDispID _dispid(/* BeginCloseDocument */ DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocumentFileNotifyDispT<T>::CloseDocument()
{
  _TDispID _dispid(/* CloseDocument */ DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocumentFileNotifyDispT<T>::BeginSaveDocument(BSTR fileName)
{
  _TDispID _dispid(/* BeginSaveDocument */ DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocumentFileNotifyDispT<T>::SaveDocument()
{
  _TDispID _dispid(/* SaveDocument */ DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocumentFileNotifyDispT<T>::Activate()
{
  _TDispID _dispid(/* Activate */ DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocumentFileNotifyDispT<T>::Deactivate()
{
  _TDispID _dispid(/* Deactivate */ DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocumentFileNotifyDispT<T>::BeginSaveAsDocument()
{
  _TDispID _dispid(/* BeginSaveAsDocument */ DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocumentFileNotifyDispT<T>::DocumentFrameOpen(LPDISPATCH v)
{
  _TDispID _dispid(/* DocumentFrameOpen */ DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = v /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocumentFileNotifyDispT<T>::ProcessActivate(long iD)
{
  _TDispID _dispid(/* ProcessActivate */ DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = iD /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocumentFileNotifyDispT<T>::ProcessDeactivate(long iD)
{
  _TDispID _dispid(/* ProcessDeactivate */ DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = iD /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksDocument3DNotifyResult
// Flags:     (4096) Dispatchable
// GUID:      {9F88CAAA-A50F-46F4-904A-846C792FA649}
// *********************************************************************//
template <class T> long __fastcall
ksDocument3DNotifyResultDispT<T>::GetNotifyType()
{
  _TDispID _dispid(*this, OLETEXT("GetNotifyType"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocument3DNotifyResultDispT<T>::GetNotifyObjectType()
{
  _TDispID _dispid(*this, OLETEXT("GetNotifyObjectType"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocument3DNotifyResultDispT<T>::GetNotifyObject()
{
  _TDispID _dispid(*this, OLETEXT("GetNotifyObject"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSpecRoughParam
// Flags:     (4096) Dispatchable
// GUID:      {364521A3-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksSpecRoughParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksSpecRoughParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpecRoughParamDispT<T>::set_sign(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("sign"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpecRoughParamDispT<T>::get_sign()
{
  _TDispID _dispid(*this, OLETEXT("sign"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpecRoughParamDispT<T>::set_t(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("t"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksSpecRoughParamDispT<T>::get_t()
{
  _TDispID _dispid(*this, OLETEXT("t"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpecRoughParamDispT<T>::set_s(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("s"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksSpecRoughParamDispT<T>::get_s()
{
  _TDispID _dispid(*this, OLETEXT("s"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpecRoughParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksEllipseParam
// Flags:     (4096) Dispatchable
// GUID:      {364521A6-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksEllipseParamDispT<T>::set_xc(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("xc"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksEllipseParamDispT<T>::get_xc()
{
  _TDispID _dispid(*this, OLETEXT("xc"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEllipseParamDispT<T>::set_yc(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("yc"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksEllipseParamDispT<T>::get_yc()
{
  _TDispID _dispid(*this, OLETEXT("yc"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEllipseParamDispT<T>::set_A(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("A"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksEllipseParamDispT<T>::get_A()
{
  _TDispID _dispid(*this, OLETEXT("A"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEllipseParamDispT<T>::set_B(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("B"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksEllipseParamDispT<T>::get_B()
{
  _TDispID _dispid(*this, OLETEXT("B"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEllipseParamDispT<T>::set_angle(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksEllipseParamDispT<T>::get_angle()
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEllipseParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksEllipseParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEllipseParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksEllipseArcParam
// Flags:     (4096) Dispatchable
// GUID:      {364521A9-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksEllipseArcParamDispT<T>::set_xc(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("xc"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksEllipseArcParamDispT<T>::get_xc()
{
  _TDispID _dispid(*this, OLETEXT("xc"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEllipseArcParamDispT<T>::set_yc(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("yc"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksEllipseArcParamDispT<T>::get_yc()
{
  _TDispID _dispid(*this, OLETEXT("yc"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEllipseArcParamDispT<T>::set_A(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("A"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksEllipseArcParamDispT<T>::get_A()
{
  _TDispID _dispid(*this, OLETEXT("A"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEllipseArcParamDispT<T>::set_B(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("B"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksEllipseArcParamDispT<T>::get_B()
{
  _TDispID _dispid(*this, OLETEXT("B"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEllipseArcParamDispT<T>::set_angle(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksEllipseArcParamDispT<T>::get_angle()
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEllipseArcParamDispT<T>::set_angleFirst(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angleFirst"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksEllipseArcParamDispT<T>::get_angleFirst()
{
  _TDispID _dispid(*this, OLETEXT("angleFirst"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEllipseArcParamDispT<T>::set_angleSecond(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angleSecond"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksEllipseArcParamDispT<T>::get_angleSecond()
{
  _TDispID _dispid(*this, OLETEXT("angleSecond"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEllipseArcParamDispT<T>::set_direction(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("direction"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksEllipseArcParamDispT<T>::get_direction()
{
  _TDispID _dispid(*this, OLETEXT("direction"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEllipseArcParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksEllipseArcParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEllipseArcParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksEllipseArcParam1
// Flags:     (4096) Dispatchable
// GUID:      {364521AC-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksEllipseArcParam1DispT<T>::set_xc(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("xc"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksEllipseArcParam1DispT<T>::get_xc()
{
  _TDispID _dispid(*this, OLETEXT("xc"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEllipseArcParam1DispT<T>::set_yc(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("yc"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksEllipseArcParam1DispT<T>::get_yc()
{
  _TDispID _dispid(*this, OLETEXT("yc"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEllipseArcParam1DispT<T>::set_A(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("A"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksEllipseArcParam1DispT<T>::get_A()
{
  _TDispID _dispid(*this, OLETEXT("A"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEllipseArcParam1DispT<T>::set_B(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("B"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksEllipseArcParam1DispT<T>::get_B()
{
  _TDispID _dispid(*this, OLETEXT("B"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEllipseArcParam1DispT<T>::set_angle(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksEllipseArcParam1DispT<T>::get_angle()
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEllipseArcParam1DispT<T>::set_parFirst(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("parFirst"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksEllipseArcParam1DispT<T>::get_parFirst()
{
  _TDispID _dispid(*this, OLETEXT("parFirst"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEllipseArcParam1DispT<T>::set_parSecond(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("parSecond"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksEllipseArcParam1DispT<T>::get_parSecond()
{
  _TDispID _dispid(*this, OLETEXT("parSecond"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEllipseArcParam1DispT<T>::set_direction(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("direction"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksEllipseArcParam1DispT<T>::get_direction()
{
  _TDispID _dispid(*this, OLETEXT("direction"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEllipseArcParam1DispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksEllipseArcParam1DispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEllipseArcParam1DispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksEquidistantParam
// Flags:     (4096) Dispatchable
// GUID:      {364521AF-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksEquidistantParamDispT<T>::set_geoObj(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("geoObj"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksEquidistantParamDispT<T>::get_geoObj()
{
  _TDispID _dispid(*this, OLETEXT("geoObj"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEquidistantParamDispT<T>::set_side(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("side"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksEquidistantParamDispT<T>::get_side()
{
  _TDispID _dispid(*this, OLETEXT("side"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEquidistantParamDispT<T>::set_cutMode(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("cutMode"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksEquidistantParamDispT<T>::get_cutMode()
{
  _TDispID _dispid(*this, OLETEXT("cutMode"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEquidistantParamDispT<T>::set_degState(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("degState"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksEquidistantParamDispT<T>::get_degState()
{
  _TDispID _dispid(*this, OLETEXT("degState"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEquidistantParamDispT<T>::set_radRight(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("radRight"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksEquidistantParamDispT<T>::get_radRight()
{
  _TDispID _dispid(*this, OLETEXT("radRight"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEquidistantParamDispT<T>::set_radLeft(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("radLeft"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksEquidistantParamDispT<T>::get_radLeft()
{
  _TDispID _dispid(*this, OLETEXT("radLeft"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEquidistantParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksEquidistantParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEquidistantParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksParagraphParam
// Flags:     (4096) Dispatchable
// GUID:      {364521B2-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksParagraphParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksParagraphParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksParagraphParamDispT<T>::set_x(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksParagraphParamDispT<T>::get_x()
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksParagraphParamDispT<T>::set_y(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksParagraphParamDispT<T>::get_y()
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksParagraphParamDispT<T>::set_ang(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksParagraphParamDispT<T>::get_ang()
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksParagraphParamDispT<T>::set_width(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("width"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksParagraphParamDispT<T>::get_width()
{
  _TDispID _dispid(*this, OLETEXT("width"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksParagraphParamDispT<T>::set_height(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("height"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksParagraphParamDispT<T>::get_height()
{
  _TDispID _dispid(*this, OLETEXT("height"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksParagraphParamDispT<T>::set_vFormat(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("vFormat"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksParagraphParamDispT<T>::get_vFormat()
{
  _TDispID _dispid(*this, OLETEXT("vFormat"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksParagraphParamDispT<T>::set_hFormat(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("hFormat"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksParagraphParamDispT<T>::get_hFormat()
{
  _TDispID _dispid(*this, OLETEXT("hFormat"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksParagraphParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksTextItemParam
// Flags:     (4096) Dispatchable
// GUID:      {364521B7-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksTextItemParamDispT<T>::set_type(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksTextItemParamDispT<T>::get_type()
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextItemParamDispT<T>::set_s(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("s"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksTextItemParamDispT<T>::get_s()
{
  _TDispID _dispid(*this, OLETEXT("s"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextItemParamDispT<T>::set_iSNumb(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("iSNumb"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksTextItemParamDispT<T>::get_iSNumb()
{
  _TDispID _dispid(*this, OLETEXT("iSNumb"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksTextItemParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksTextItemParamDispT<T>::GetItemFont()
{
  _TDispID _dispid(*this, OLETEXT("GetItemFont"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksTextItemParamDispT<T>::SetItemFont(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetItemFont"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksTextLineParam
// Flags:     (4096) Dispatchable
// GUID:      {364521BA-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksTextLineParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksTextLineParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksTextLineParamDispT<T>::GetTextItemArr()
{
  _TDispID _dispid(*this, OLETEXT("GetTextItemArr"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksTextLineParamDispT<T>::SetTextItemArr(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetTextItemArr"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksTextLineParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksTextItemFont
// Flags:     (4096) Dispatchable
// GUID:      {364521BD-94B5-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksTextItemFontDispT<T>::set_fontName(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("fontName"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksTextItemFontDispT<T>::get_fontName()
{
  _TDispID _dispid(*this, OLETEXT("fontName"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextItemFontDispT<T>::set_height(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("height"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksTextItemFontDispT<T>::get_height()
{
  _TDispID _dispid(*this, OLETEXT("height"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextItemFontDispT<T>::set_ksu(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ksu"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksTextItemFontDispT<T>::get_ksu()
{
  _TDispID _dispid(*this, OLETEXT("ksu"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextItemFontDispT<T>::set_color(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("color"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksTextItemFontDispT<T>::get_color()
{
  _TDispID _dispid(*this, OLETEXT("color"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextItemFontDispT<T>::set_bitVector(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("bitVector"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksTextItemFontDispT<T>::get_bitVector()
{
  _TDispID _dispid(*this, OLETEXT("bitVector"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksTextItemFontDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksTextItemFontDispT<T>::GetBitVectorValue(long val)
{
  _TDispID _dispid(*this, OLETEXT("GetBitVectorValue"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksTextItemFontDispT<T>::SetBitVectorValue(long val, TOLEBOOL state)
{
  _TDispID _dispid(*this, OLETEXT("SetBitVectorValue"), DISPID(8));
  TAutoArgs<2> _args;
  _args[1] = val /*[VT_I4:0]*/;
  _args[2] = state /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCornerParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C2501-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksCornerParamDispT<T>::set_index(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("index"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksCornerParamDispT<T>::get_index()
{
  _TDispID _dispid(*this, OLETEXT("index"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCornerParamDispT<T>::set_fillet(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("fillet"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCornerParamDispT<T>::get_fillet()
{
  _TDispID _dispid(*this, OLETEXT("fillet"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCornerParamDispT<T>::set_l1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("l1"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCornerParamDispT<T>::get_l1()
{
  _TDispID _dispid(*this, OLETEXT("l1"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCornerParamDispT<T>::set_l2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("l2"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCornerParamDispT<T>::get_l2()
{
  _TDispID _dispid(*this, OLETEXT("l2"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCornerParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksContourParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C2504-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksContourParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksContourParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksContourParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksLayerParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C2507-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksLayerParamDispT<T>::set_state(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("state"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksLayerParamDispT<T>::get_state()
{
  _TDispID _dispid(*this, OLETEXT("state"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLayerParamDispT<T>::set_color(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("color"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksLayerParamDispT<T>::get_color()
{
  _TDispID _dispid(*this, OLETEXT("color"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLayerParamDispT<T>::set_name(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksLayerParamDispT<T>::get_name()
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksLayerParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksLineParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C250A-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksLineParamDispT<T>::set_x(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksLineParamDispT<T>::get_x()
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLineParamDispT<T>::set_y(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksLineParamDispT<T>::get_y()
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLineParamDispT<T>::set_angle(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksLineParamDispT<T>::get_angle()
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksLineParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksRegularPolygonParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C250D-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksRegularPolygonParamDispT<T>::set_count(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("count"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksRegularPolygonParamDispT<T>::get_count()
{
  _TDispID _dispid(*this, OLETEXT("count"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRegularPolygonParamDispT<T>::set_xc(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("xc"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRegularPolygonParamDispT<T>::get_xc()
{
  _TDispID _dispid(*this, OLETEXT("xc"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRegularPolygonParamDispT<T>::set_yc(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("yc"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRegularPolygonParamDispT<T>::get_yc()
{
  _TDispID _dispid(*this, OLETEXT("yc"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRegularPolygonParamDispT<T>::set_ang(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRegularPolygonParamDispT<T>::get_ang()
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRegularPolygonParamDispT<T>::set_radius(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("radius"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRegularPolygonParamDispT<T>::get_radius()
{
  _TDispID _dispid(*this, OLETEXT("radius"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRegularPolygonParamDispT<T>::set_describe(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("describe"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksRegularPolygonParamDispT<T>::get_describe()
{
  _TDispID _dispid(*this, OLETEXT("describe"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRegularPolygonParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksRegularPolygonParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksRegularPolygonParamDispT<T>::GetPCorner()
{
  _TDispID _dispid(*this, OLETEXT("GetPCorner"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRegularPolygonParamDispT<T>::SetPCorner(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetPCorner"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRegularPolygonParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksRectangleParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C2510-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksRectangleParamDispT<T>::set_x(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRectangleParamDispT<T>::get_x()
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRectangleParamDispT<T>::set_y(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRectangleParamDispT<T>::get_y()
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRectangleParamDispT<T>::set_ang(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRectangleParamDispT<T>::get_ang()
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRectangleParamDispT<T>::set_height(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("height"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRectangleParamDispT<T>::get_height()
{
  _TDispID _dispid(*this, OLETEXT("height"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRectangleParamDispT<T>::set_width(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("width"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRectangleParamDispT<T>::get_width()
{
  _TDispID _dispid(*this, OLETEXT("width"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRectangleParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksRectangleParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksRectangleParamDispT<T>::GetPCorner()
{
  _TDispID _dispid(*this, OLETEXT("GetPCorner"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRectangleParamDispT<T>::SetPCorner(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetPCorner"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRectangleParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksBaseParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C2513-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksBaseParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksBaseParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBaseParamDispT<T>::set_x1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x1"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksBaseParamDispT<T>::get_x1()
{
  _TDispID _dispid(*this, OLETEXT("x1"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBaseParamDispT<T>::set_y1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y1"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksBaseParamDispT<T>::get_y1()
{
  _TDispID _dispid(*this, OLETEXT("y1"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBaseParamDispT<T>::set_x2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x2"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksBaseParamDispT<T>::get_x2()
{
  _TDispID _dispid(*this, OLETEXT("x2"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBaseParamDispT<T>::set_y2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y2"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksBaseParamDispT<T>::get_y2()
{
  _TDispID _dispid(*this, OLETEXT("y2"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBaseParamDispT<T>::set_type(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksBaseParamDispT<T>::get_type()
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBaseParamDispT<T>::set_str(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("str"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksBaseParamDispT<T>::get_str()
{
  _TDispID _dispid(*this, OLETEXT("str"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBaseParamDispT<T>::GetPTextItem()
{
  _TDispID _dispid(*this, OLETEXT("GetPTextItem"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBaseParamDispT<T>::SetPTextItem(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetPTextItem"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBaseParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksLtVariant
// Flags:     (4096) Dispatchable
// GUID:      {E79C2516-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksLtVariantDispT<T>::set_strVal(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("strVal"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksLtVariantDispT<T>::get_strVal()
{
  _TDispID _dispid(*this, OLETEXT("strVal"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLtVariantDispT<T>::set_shortVal(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("shortVal"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksLtVariantDispT<T>::get_shortVal()
{
  _TDispID _dispid(*this, OLETEXT("shortVal"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLtVariantDispT<T>::set_intVal(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("intVal"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksLtVariantDispT<T>::get_intVal()
{
  _TDispID _dispid(*this, OLETEXT("intVal"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLtVariantDispT<T>::set_longVal(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("longVal"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksLtVariantDispT<T>::get_longVal()
{
  _TDispID _dispid(*this, OLETEXT("longVal"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLtVariantDispT<T>::set_floatVal(float /*[VT_R4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("floatVal"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> float /*[VT_R4:0]*/ __fastcall
ksLtVariantDispT<T>::get_floatVal()
{
  _TDispID _dispid(*this, OLETEXT("floatVal"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLtVariantDispT<T>::set_doubleVal(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("doubleVal"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksLtVariantDispT<T>::get_doubleVal()
{
  _TDispID _dispid(*this, OLETEXT("doubleVal"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLtVariantDispT<T>::set_charVal(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("charVal"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksLtVariantDispT<T>::get_charVal()
{
  _TDispID _dispid(*this, OLETEXT("charVal"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLtVariantDispT<T>::set_uCharVal(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("uCharVal"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksLtVariantDispT<T>::get_uCharVal()
{
  _TDispID _dispid(*this, OLETEXT("uCharVal"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLtVariantDispT<T>::set_uIntVal(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("uIntVal"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksLtVariantDispT<T>::get_uIntVal()
{
  _TDispID _dispid(*this, OLETEXT("uIntVal"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLtVariantDispT<T>::set_wstrVal(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("wstrVal"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksLtVariantDispT<T>::get_wstrVal()
{
  _TDispID _dispid(*this, OLETEXT("wstrVal"), DISPID(12));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> short __fastcall
ksLtVariantDispT<T>::get_valType()
{
  _TDispID _dispid(*this, OLETEXT("valType"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksLtVariantDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksUserParam
// Flags:     (4096) Dispatchable
// GUID:      {E79C2519-9584-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksUserParamDispT<T>::set_fileName(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("fileName"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksUserParamDispT<T>::get_fileName()
{
  _TDispID _dispid(*this, OLETEXT("fileName"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksUserParamDispT<T>::set_libName(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("libName"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksUserParamDispT<T>::get_libName()
{
  _TDispID _dispid(*this, OLETEXT("libName"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksUserParamDispT<T>::set_number(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("number"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksUserParamDispT<T>::get_number()
{
  _TDispID _dispid(*this, OLETEXT("number"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksUserParamDispT<T>::set_UserParams(TVariant /*[VT_VARIANT:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("UserParams"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TVariant /*[VT_VARIANT:0]*/ __fastcall
ksUserParamDispT<T>::get_UserParams()
{
  _TDispID _dispid(*this, OLETEXT("UserParams"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksUserParamDispT<T>::GetUserArray()
{
  _TDispID _dispid(*this, OLETEXT("GetUserArray"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksUserParamDispT<T>::SetUserArray(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetUserArray"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksUserParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksMathPointParam
// Flags:     (4096) Dispatchable
// GUID:      {3198E121-9585-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksMathPointParamDispT<T>::set_x(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksMathPointParamDispT<T>::get_x()
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMathPointParamDispT<T>::set_y(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksMathPointParamDispT<T>::get_y()
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMathPointParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCurvePicture
// Flags:     (4096) Dispatchable
// GUID:      {910EC541-958D-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> LPDISPATCH __fastcall
ksCurvePictureDispT<T>::GetPolygon()
{
  _TDispID _dispid(*this, OLETEXT("GetPolygon"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurvePictureDispT<T>::SetPolygon(LPDISPATCH polygon)
{
  _TDispID _dispid(*this, OLETEXT("SetPolygon"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = polygon /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCurvePictureDispT<T>::GetFill()
{
  _TDispID _dispid(*this, OLETEXT("GetFill"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurvePictureDispT<T>::SetFill(LPDISPATCH fill)
{
  _TDispID _dispid(*this, OLETEXT("SetFill"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = fill /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurvePictureDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCurvePattern
// Flags:     (4096) Dispatchable
// GUID:      {910EC544-958D-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksCurvePatternDispT<T>::set_visibleSeg(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("visibleSeg"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCurvePatternDispT<T>::get_visibleSeg()
{
  _TDispID _dispid(*this, OLETEXT("visibleSeg"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCurvePatternDispT<T>::set_invisibleSeg(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("invisibleSeg"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCurvePatternDispT<T>::get_invisibleSeg()
{
  _TDispID _dispid(*this, OLETEXT("invisibleSeg"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurvePatternDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksTAN
// Flags:     (4096) Dispatchable
// GUID:      {8075EDE4-6C85-4711-8685-68FBE359D4C4}
// *********************************************************************//
template <class T> double __fastcall
ksTANDispT<T>::get_x1(long index)
{
  _TDispID _dispid(*this, OLETEXT("x1"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksTANDispT<T>::get_y1(long index)
{
  _TDispID _dispid(*this, OLETEXT("y1"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksTANDispT<T>::get_x2(long index)
{
  _TDispID _dispid(*this, OLETEXT("x2"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksTANDispT<T>::get_y2(long index)
{
  _TDispID _dispid(*this, OLETEXT("y2"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCON
// Flags:     (4096) Dispatchable
// GUID:      {C175BFB8-D7D6-4325-BFDA-2A282B9D1119}
// *********************************************************************//
template <class T> long __fastcall
ksCONDispT<T>::GetCount()
{
  _TDispID _dispid(*this, OLETEXT("GetCount"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksCONDispT<T>::GetXc(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetXc"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksCONDispT<T>::GetYc(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetYc"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksCONDispT<T>::GetX1(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetX1"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksCONDispT<T>::GetY1(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetY1"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksCONDispT<T>::GetX2(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetX2"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksCONDispT<T>::GetY2(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetY2"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksInertiaParam
// Flags:     (4096) Dispatchable
// GUID:      {EA92E649-239E-4105-BBD3-AEF4817BD783}
// *********************************************************************//
template <class T> double __fastcall
ksInertiaParamDispT<T>::get_xc()
{
  _TDispID _dispid(*this, OLETEXT("xc"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksInertiaParamDispT<T>::get_yc()
{
  _TDispID _dispid(*this, OLETEXT("yc"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksInertiaParamDispT<T>::get_F()
{
  _TDispID _dispid(*this, OLETEXT("F"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksInertiaParamDispT<T>::get_ly()
{
  _TDispID _dispid(*this, OLETEXT("ly"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksInertiaParamDispT<T>::get_lx()
{
  _TDispID _dispid(*this, OLETEXT("lx"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksInertiaParamDispT<T>::get_lxy()
{
  _TDispID _dispid(*this, OLETEXT("lxy"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksInertiaParamDispT<T>::get_mx()
{
  _TDispID _dispid(*this, OLETEXT("mx"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksInertiaParamDispT<T>::get_my()
{
  _TDispID _dispid(*this, OLETEXT("my"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksInertiaParamDispT<T>::get_mxy()
{
  _TDispID _dispid(*this, OLETEXT("mxy"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksInertiaParamDispT<T>::get_jx()
{
  _TDispID _dispid(*this, OLETEXT("jx"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksInertiaParamDispT<T>::get_jy()
{
  _TDispID _dispid(*this, OLETEXT("jy"), DISPID(11));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksInertiaParamDispT<T>::get_A()
{
  _TDispID _dispid(*this, OLETEXT("A"), DISPID(12));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksMassInertiaParam
// Flags:     (4096) Dispatchable
// GUID:      {283F77EB-7E2C-4F71-8B16-4D286FA4857E}
// *********************************************************************//
template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_xc()
{
  _TDispID _dispid(*this, OLETEXT("xc"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_yc()
{
  _TDispID _dispid(*this, OLETEXT("yc"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_zc()
{
  _TDispID _dispid(*this, OLETEXT("zc"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_lx()
{
  _TDispID _dispid(*this, OLETEXT("lx"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_ly()
{
  _TDispID _dispid(*this, OLETEXT("ly"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_lz()
{
  _TDispID _dispid(*this, OLETEXT("lz"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_jx()
{
  _TDispID _dispid(*this, OLETEXT("jx"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_jy()
{
  _TDispID _dispid(*this, OLETEXT("jy"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_jz()
{
  _TDispID _dispid(*this, OLETEXT("jz"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_jxy()
{
  _TDispID _dispid(*this, OLETEXT("jxy"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_jxz()
{
  _TDispID _dispid(*this, OLETEXT("jxz"), DISPID(11));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_jyz()
{
  _TDispID _dispid(*this, OLETEXT("jyz"), DISPID(12));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_jx0z()
{
  _TDispID _dispid(*this, OLETEXT("jx0z"), DISPID(13));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_jy0z()
{
  _TDispID _dispid(*this, OLETEXT("jy0z"), DISPID(14));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_jx0y()
{
  _TDispID _dispid(*this, OLETEXT("jx0y"), DISPID(15));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_lxy()
{
  _TDispID _dispid(*this, OLETEXT("lxy"), DISPID(16));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_lxz()
{
  _TDispID _dispid(*this, OLETEXT("lxz"), DISPID(17));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_lyz()
{
  _TDispID _dispid(*this, OLETEXT("lyz"), DISPID(18));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_r()
{
  _TDispID _dispid(*this, OLETEXT("r"), DISPID(19));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_m()
{
  _TDispID _dispid(*this, OLETEXT("m"), DISPID(20));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_v()
{
  _TDispID _dispid(*this, OLETEXT("v"), DISPID(21));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMassInertiaParamDispT<T>::SetBitVectorValue(long val, TOLEBOOL setState)
{
  _TDispID _dispid(*this, OLETEXT("SetBitVectorValue"), DISPID(22));
  TAutoArgs<2> _args;
  _args[1] = val /*[VT_I4:0]*/;
  _args[2] = setState /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_F()
{
  _TDispID _dispid(*this, OLETEXT("F"), DISPID(23));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_jx0()
{
  _TDispID _dispid(*this, OLETEXT("jx0"), DISPID(24));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_jy0()
{
  _TDispID _dispid(*this, OLETEXT("jy0"), DISPID(25));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMassInertiaParamDispT<T>::get_jz0()
{
  _TDispID _dispid(*this, OLETEXT("jz0"), DISPID(26));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMassInertiaParamDispT<T>::GetAxisX(double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetAxisX"), DISPID(27));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  _args[3] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMassInertiaParamDispT<T>::GetAxisY(double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetAxisY"), DISPID(28));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  _args[3] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMassInertiaParamDispT<T>::GetAxisZ(double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetAxisZ"), DISPID(29));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  _args[3] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksMathematic2D
// Flags:     (4096) Dispatchable
// GUID:      {F2D5AE01-45DE-4496-B01B-9958CAEF5943}
// *********************************************************************//
template <class T> double __fastcall
ksMathematic2DDispT<T>::ksCosD(double x)
{
  _TDispID _dispid(*this, OLETEXT("ksCosD"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = x /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMathematic2DDispT<T>::ksSinD(double x)
{
  _TDispID _dispid(*this, OLETEXT("ksSinD"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = x /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMathematic2DDispT<T>::ksTanD(double x)
{
  _TDispID _dispid(*this, OLETEXT("ksTanD"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = x /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMathematic2DDispT<T>::ksAtanD(double x)
{
  _TDispID _dispid(*this, OLETEXT("ksAtanD"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = x /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMathematic2DDispT<T>::ksAngle(double x1, double y1, double x2, double y2)
{
  _TDispID _dispid(*this, OLETEXT("ksAngle"), DISPID(5));
  TAutoArgs<4> _args;
  _args[1] = x1 /*[VT_R8:0]*/;
  _args[2] = y1 /*[VT_R8:0]*/;
  _args[3] = x2 /*[VT_R8:0]*/;
  _args[4] = y2 /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksMathematic2DDispT<T>::ksEqualPoints(double x1, double y1, double x2, double y2)
{
  _TDispID _dispid(*this, OLETEXT("ksEqualPoints"), DISPID(6));
  TAutoArgs<4> _args;
  _args[1] = x1 /*[VT_R8:0]*/;
  _args[2] = y1 /*[VT_R8:0]*/;
  _args[3] = x2 /*[VT_R8:0]*/;
  _args[4] = y2 /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMathematic2DDispT<T>::ksIntersectLinSLinS(double x11, double y11, double x12, double y12, 
                                            double x21, double y21, double x22, double y22, 
                                            LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksIntersectLinSLinS"), DISPID(7));
  TAutoArgs<9> _args;
  _args[1] = x11 /*[VT_R8:0]*/;
  _args[2] = y11 /*[VT_R8:0]*/;
  _args[3] = x12 /*[VT_R8:0]*/;
  _args[4] = y12 /*[VT_R8:0]*/;
  _args[5] = x21 /*[VT_R8:0]*/;
  _args[6] = y21 /*[VT_R8:0]*/;
  _args[7] = x22 /*[VT_R8:0]*/;
  _args[8] = y22 /*[VT_R8:0]*/;
  _args[9] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMathematic2DDispT<T>::ksIntersectLinSLine(double x1, double y1, double x2, double y2, double x, 
                                            double y, double ang, LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksIntersectLinSLine"), DISPID(8));
  TAutoArgs<8> _args;
  _args[1] = x1 /*[VT_R8:0]*/;
  _args[2] = y1 /*[VT_R8:0]*/;
  _args[3] = x2 /*[VT_R8:0]*/;
  _args[4] = y2 /*[VT_R8:0]*/;
  _args[5] = x /*[VT_R8:0]*/;
  _args[6] = y /*[VT_R8:0]*/;
  _args[7] = ang /*[VT_R8:0]*/;
  _args[8] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMathematic2DDispT<T>::ksIntersectArcLin(double xc, double yc, double rad, double f1, double f2, 
                                          long n, double x, double y, double ang, LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksIntersectArcLin"), DISPID(9));
  TAutoArgs<10> _args;
  _args[1] = xc /*[VT_R8:0]*/;
  _args[2] = yc /*[VT_R8:0]*/;
  _args[3] = rad /*[VT_R8:0]*/;
  _args[4] = f1 /*[VT_R8:0]*/;
  _args[5] = f2 /*[VT_R8:0]*/;
  _args[6] = n /*[VT_I4:0]*/;
  _args[7] = x /*[VT_R8:0]*/;
  _args[8] = y /*[VT_R8:0]*/;
  _args[9] = ang /*[VT_R8:0]*/;
  _args[10] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMathematic2DDispT<T>::ksIntersectLinLin(double x1, double y1, double angle1, double x2, double y2
                                          , double angle2, LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksIntersectLinLin"), DISPID(10));
  TAutoArgs<7> _args;
  _args[1] = x1 /*[VT_R8:0]*/;
  _args[2] = y1 /*[VT_R8:0]*/;
  _args[3] = angle1 /*[VT_R8:0]*/;
  _args[4] = x2 /*[VT_R8:0]*/;
  _args[5] = y2 /*[VT_R8:0]*/;
  _args[6] = angle2 /*[VT_R8:0]*/;
  _args[7] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMathematic2DDispT<T>::ksIntersectCirCir(double xc1, double yc1, double radius1, double xc2, 
                                          double yc2, double radius2, LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksIntersectCirCir"), DISPID(11));
  TAutoArgs<7> _args;
  _args[1] = xc1 /*[VT_R8:0]*/;
  _args[2] = yc1 /*[VT_R8:0]*/;
  _args[3] = radius1 /*[VT_R8:0]*/;
  _args[4] = xc2 /*[VT_R8:0]*/;
  _args[5] = yc2 /*[VT_R8:0]*/;
  _args[6] = radius2 /*[VT_R8:0]*/;
  _args[7] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMathematic2DDispT<T>::ksIntersectArcArc(double xac, double yac, double rada, double fa1, 
                                          double fa2, short directa, double xbc, double ybc, 
                                          double radb, double fb1, double fb2, long directb, 
                                          LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksIntersectArcArc"), DISPID(12));
  TAutoArgs<13> _args;
  _args[1] = xac /*[VT_R8:0]*/;
  _args[2] = yac /*[VT_R8:0]*/;
  _args[3] = rada /*[VT_R8:0]*/;
  _args[4] = fa1 /*[VT_R8:0]*/;
  _args[5] = fa2 /*[VT_R8:0]*/;
  _args[6] = directa /*[VT_I2:0]*/;
  _args[7] = xbc /*[VT_R8:0]*/;
  _args[8] = ybc /*[VT_R8:0]*/;
  _args[9] = radb /*[VT_R8:0]*/;
  _args[10] = fb1 /*[VT_R8:0]*/;
  _args[11] = fb2 /*[VT_R8:0]*/;
  _args[12] = directb /*[VT_I4:0]*/;
  _args[13] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMathematic2DDispT<T>::ksIntersectLinSArc(double x1, double y1, double x2, double y2, double xc, 
                                           double yc, double rad, double f1, double f2, short direct
                                           , LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksIntersectLinSArc"), DISPID(13));
  TAutoArgs<11> _args;
  _args[1] = x1 /*[VT_R8:0]*/;
  _args[2] = y1 /*[VT_R8:0]*/;
  _args[3] = x2 /*[VT_R8:0]*/;
  _args[4] = y2 /*[VT_R8:0]*/;
  _args[5] = xc /*[VT_R8:0]*/;
  _args[6] = yc /*[VT_R8:0]*/;
  _args[7] = rad /*[VT_R8:0]*/;
  _args[8] = f1 /*[VT_R8:0]*/;
  _args[9] = f2 /*[VT_R8:0]*/;
  _args[10] = direct /*[VT_I2:0]*/;
  _args[11] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMathematic2DDispT<T>::ksIntersectLinSCir(double x1, double y1, double x2, double y2, double xc, 
                                           double yc, double rad, LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksIntersectLinSCir"), DISPID(14));
  TAutoArgs<8> _args;
  _args[1] = x1 /*[VT_R8:0]*/;
  _args[2] = y1 /*[VT_R8:0]*/;
  _args[3] = x2 /*[VT_R8:0]*/;
  _args[4] = y2 /*[VT_R8:0]*/;
  _args[5] = xc /*[VT_R8:0]*/;
  _args[6] = yc /*[VT_R8:0]*/;
  _args[7] = rad /*[VT_R8:0]*/;
  _args[8] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMathematic2DDispT<T>::ksIntersectCirLin(double xc, double yc, double rad, double xl, double yl, 
                                          double angle, LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksIntersectCirLin"), DISPID(15));
  TAutoArgs<7> _args;
  _args[1] = xc /*[VT_R8:0]*/;
  _args[2] = yc /*[VT_R8:0]*/;
  _args[3] = rad /*[VT_R8:0]*/;
  _args[4] = xl /*[VT_R8:0]*/;
  _args[5] = yl /*[VT_R8:0]*/;
  _args[6] = angle /*[VT_R8:0]*/;
  _args[7] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMathematic2DDispT<T>::ksIntersectCirArc(double xcc, double ycc, double radc, double xac, 
                                          double yac, double rada, double fa1, double fa2, 
                                          short directa, LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksIntersectCirArc"), DISPID(16));
  TAutoArgs<10> _args;
  _args[1] = xcc /*[VT_R8:0]*/;
  _args[2] = ycc /*[VT_R8:0]*/;
  _args[3] = radc /*[VT_R8:0]*/;
  _args[4] = xac /*[VT_R8:0]*/;
  _args[5] = yac /*[VT_R8:0]*/;
  _args[6] = rada /*[VT_R8:0]*/;
  _args[7] = fa1 /*[VT_R8:0]*/;
  _args[8] = fa2 /*[VT_R8:0]*/;
  _args[9] = directa /*[VT_I2:0]*/;
  _args[10] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksMathematic2DDispT<T>::ksIntersectCurvCurv(long p1, long p2, LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksIntersectCurvCurv"), DISPID(17));
  TAutoArgs<3> _args;
  _args[1] = p1 /*[VT_I4:0]*/;
  _args[2] = p2 /*[VT_I4:0]*/;
  _args[3] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMathematic2DDispT<T>::ksTanLinePointCircle(double x, double y, double xc, double yc, double rad, 
                                             LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksTanLinePointCircle"), DISPID(18));
  TAutoArgs<6> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = xc /*[VT_R8:0]*/;
  _args[4] = yc /*[VT_R8:0]*/;
  _args[5] = rad /*[VT_R8:0]*/;
  _args[6] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMathematic2DDispT<T>::ksTanLineAngCircle(double xc, double yc, double rad, double ang, 
                                           LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksTanLineAngCircle"), DISPID(19));
  TAutoArgs<5> _args;
  _args[1] = xc /*[VT_R8:0]*/;
  _args[2] = yc /*[VT_R8:0]*/;
  _args[3] = rad /*[VT_R8:0]*/;
  _args[4] = ang /*[VT_R8:0]*/;
  _args[5] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMathematic2DDispT<T>::ksTanCircleCircle(double xc1, double yc1, double radius1, double xc2, 
                                          double yc2, double radius2, LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksTanCircleCircle"), DISPID(20));
  TAutoArgs<7> _args;
  _args[1] = xc1 /*[VT_R8:0]*/;
  _args[2] = yc1 /*[VT_R8:0]*/;
  _args[3] = radius1 /*[VT_R8:0]*/;
  _args[4] = xc2 /*[VT_R8:0]*/;
  _args[5] = yc2 /*[VT_R8:0]*/;
  _args[6] = radius2 /*[VT_R8:0]*/;
  _args[7] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksMathematic2DDispT<T>::ksTanLinePointCurve(double x, double y, long pCur, LPDISPATCH array)
{
  _TDispID _dispid(*this, OLETEXT("ksTanLinePointCurve"), DISPID(21));
  TAutoArgs<4> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = pCur /*[VT_I4:0]*/;
  _args[4] = array /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMathematic2DDispT<T>::ksCouplingLineLine(double x1, double y1, double angle1, double x2, double y2
                                           , double angle2, double rad, LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksCouplingLineLine"), DISPID(22));
  TAutoArgs<8> _args;
  _args[1] = x1 /*[VT_R8:0]*/;
  _args[2] = y1 /*[VT_R8:0]*/;
  _args[3] = angle1 /*[VT_R8:0]*/;
  _args[4] = x2 /*[VT_R8:0]*/;
  _args[5] = y2 /*[VT_R8:0]*/;
  _args[6] = angle2 /*[VT_R8:0]*/;
  _args[7] = rad /*[VT_R8:0]*/;
  _args[8] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMathematic2DDispT<T>::ksCouplingLineCircle(double xc, double yc, double radc, double x1, double y1
                                             , double angle1, double rad, LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksCouplingLineCircle"), DISPID(23));
  TAutoArgs<8> _args;
  _args[1] = xc /*[VT_R8:0]*/;
  _args[2] = yc /*[VT_R8:0]*/;
  _args[3] = radc /*[VT_R8:0]*/;
  _args[4] = x1 /*[VT_R8:0]*/;
  _args[5] = y1 /*[VT_R8:0]*/;
  _args[6] = angle1 /*[VT_R8:0]*/;
  _args[7] = rad /*[VT_R8:0]*/;
  _args[8] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMathematic2DDispT<T>::ksCouplingCircleCircle(double xc1, double yc1, double radc1, double xc2, 
                                               double yc2, double radc2, double rad, 
                                               LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksCouplingCircleCircle"), DISPID(24));
  TAutoArgs<8> _args;
  _args[1] = xc1 /*[VT_R8:0]*/;
  _args[2] = yc1 /*[VT_R8:0]*/;
  _args[3] = radc1 /*[VT_R8:0]*/;
  _args[4] = xc2 /*[VT_R8:0]*/;
  _args[5] = yc2 /*[VT_R8:0]*/;
  _args[6] = radc2 /*[VT_R8:0]*/;
  _args[7] = rad /*[VT_R8:0]*/;
  _args[8] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMathematic2DDispT<T>::ksSymmetry(double x, double y, double x1, double y1, double x2, double y2, 
                                   double* xc, double* yc)
{
  _TDispID _dispid(*this, OLETEXT("ksSymmetry"), DISPID(25));
  TAutoArgs<8> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = x1 /*[VT_R8:0]*/;
  _args[4] = y1 /*[VT_R8:0]*/;
  _args[5] = x2 /*[VT_R8:0]*/;
  _args[6] = y2 /*[VT_R8:0]*/;
  _args[7] = xc /*[VT_R8:1]*/;
  _args[8] = yc /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMathematic2DDispT<T>::ksRotate(double x, double y, double xc, double yc, double ang, double* xr, 
                                 double* yr)
{
  _TDispID _dispid(*this, OLETEXT("ksRotate"), DISPID(26));
  TAutoArgs<7> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = xc /*[VT_R8:0]*/;
  _args[4] = yc /*[VT_R8:0]*/;
  _args[5] = ang /*[VT_R8:0]*/;
  _args[6] = xr /*[VT_R8:1]*/;
  _args[7] = yr /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMathematic2DDispT<T>::ksDistancePntPnt(double x1, double y1, double x2, double y2)
{
  _TDispID _dispid(*this, OLETEXT("ksDistancePntPnt"), DISPID(27));
  TAutoArgs<4> _args;
  _args[1] = x1 /*[VT_R8:0]*/;
  _args[2] = y1 /*[VT_R8:0]*/;
  _args[3] = x2 /*[VT_R8:0]*/;
  _args[4] = y2 /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMathematic2DDispT<T>::ksDistancePntLineSeg(double x, double y, double x1, double y1, double x2, 
                                             double y2)
{
  _TDispID _dispid(*this, OLETEXT("ksDistancePntLineSeg"), DISPID(28));
  TAutoArgs<6> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = x1 /*[VT_R8:0]*/;
  _args[4] = y1 /*[VT_R8:0]*/;
  _args[5] = x2 /*[VT_R8:0]*/;
  _args[6] = y2 /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMathematic2DDispT<T>::ksDistancePntArc(double x, double y, double xac, double yac, double rada, 
                                         double fa1, double fa2, short directa)
{
  _TDispID _dispid(*this, OLETEXT("ksDistancePntArc"), DISPID(29));
  TAutoArgs<8> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = xac /*[VT_R8:0]*/;
  _args[4] = yac /*[VT_R8:0]*/;
  _args[5] = rada /*[VT_R8:0]*/;
  _args[6] = fa1 /*[VT_R8:0]*/;
  _args[7] = fa2 /*[VT_R8:0]*/;
  _args[8] = directa /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMathematic2DDispT<T>::ksDistancePntCircle(double x, double y, double xc, double yc, double rad)
{
  _TDispID _dispid(*this, OLETEXT("ksDistancePntCircle"), DISPID(30));
  TAutoArgs<5> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = xc /*[VT_R8:0]*/;
  _args[4] = yc /*[VT_R8:0]*/;
  _args[5] = rad /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMathematic2DDispT<T>::ksDistancePntLine(double x, double y, double x1, double y1, double angle)
{
  _TDispID _dispid(*this, OLETEXT("ksDistancePntLine"), DISPID(31));
  TAutoArgs<5> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = x1 /*[VT_R8:0]*/;
  _args[4] = y1 /*[VT_R8:0]*/;
  _args[5] = angle /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMathematic2DDispT<T>::ksDistancePntLineForPoint(double x, double y, double x1, double y1, 
                                                  double x2, double y2)
{
  _TDispID _dispid(*this, OLETEXT("ksDistancePntLineForPoint"), DISPID(32));
  TAutoArgs<6> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = x1 /*[VT_R8:0]*/;
  _args[4] = y1 /*[VT_R8:0]*/;
  _args[5] = x2 /*[VT_R8:0]*/;
  _args[6] = y2 /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMathematic2DDispT<T>::ksPerpendicular(double x, double y, double x1, double y1, double x2, 
                                        double y2, double* xp, double* yp)
{
  _TDispID _dispid(*this, OLETEXT("ksPerpendicular"), DISPID(33));
  TAutoArgs<8> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = x1 /*[VT_R8:0]*/;
  _args[4] = y1 /*[VT_R8:0]*/;
  _args[5] = x2 /*[VT_R8:0]*/;
  _args[6] = y2 /*[VT_R8:0]*/;
  _args[7] = xp /*[VT_R8:1]*/;
  _args[8] = yp /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMathematic2DDispT<T>::ksPointsOnCurve(long curve, long count)
{
  _TDispID _dispid(*this, OLETEXT("ksPointsOnCurve"), DISPID(34));
  TAutoArgs<2> _args;
  _args[1] = curve /*[VT_I4:0]*/;
  _args[2] = count /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMathematic2DDispT<T>::ksGetCurvePerpendicular(long curve, double x, double y)
{
  _TDispID _dispid(*this, OLETEXT("ksGetCurvePerpendicular"), DISPID(35));
  TAutoArgs<3> _args;
  _args[1] = curve /*[VT_I4:0]*/;
  _args[2] = x /*[VT_R8:0]*/;
  _args[3] = y /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksMathematic2DDispT<T>::ksGetCurvePointProjection(long curve, double x, double y, double* kx, 
                                                  double* ky)
{
  _TDispID _dispid(*this, OLETEXT("ksGetCurvePointProjection"), DISPID(36));
  TAutoArgs<5> _args;
  _args[1] = curve /*[VT_I4:0]*/;
  _args[2] = x /*[VT_R8:0]*/;
  _args[3] = y /*[VT_R8:0]*/;
  _args[4] = kx /*[VT_R8:1]*/;
  _args[5] = ky /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksMathematic2DDispT<T>::ksMovePointOnCurve(long curve, double* x, double* y, double len, long dir)
{
  _TDispID _dispid(*this, OLETEXT("ksMovePointOnCurve"), DISPID(37));
  TAutoArgs<5> _args;
  _args[1] = curve /*[VT_I4:0]*/;
  _args[2] = x /*[VT_R8:1]*/;
  _args[3] = y /*[VT_R8:1]*/;
  _args[4] = len /*[VT_R8:0]*/;
  _args[5] = dir /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksMathematic2DDispT<T>::ksCalcInertiaProperties(long p, LPDISPATCH prop, short dimension)
{
  _TDispID _dispid(*this, OLETEXT("ksCalcInertiaProperties"), DISPID(38));
  TAutoArgs<3> _args;
  _args[1] = p /*[VT_I4:0]*/;
  _args[2] = prop /*[VT_DISPATCH:0]*/;
  _args[3] = dimension /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksMathematic2DDispT<T>::ksCalcMassInertiaProperties(long p, LPDISPATCH prop, double density, 
                                                    double param)
{
  _TDispID _dispid(*this, OLETEXT("ksCalcMassInertiaProperties"), DISPID(39));
  TAutoArgs<4> _args;
  _args[1] = p /*[VT_I4:0]*/;
  _args[2] = prop /*[VT_DISPATCH:0]*/;
  _args[3] = density /*[VT_R8:0]*/;
  _args[4] = param /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMathematic2DDispT<T>::ksGetCurvePerimeter(long curve, short dimension)
{
  _TDispID _dispid(*this, OLETEXT("ksGetCurvePerimeter"), DISPID(40));
  TAutoArgs<2> _args;
  _args[1] = curve /*[VT_I4:0]*/;
  _args[2] = dimension /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMathematic2DDispT<T>::ksPointsOnCurveByStep(long curve, double step)
{
  _TDispID _dispid(*this, OLETEXT("ksPointsOnCurveByStep"), DISPID(41));
  TAutoArgs<2> _args;
  _args[1] = curve /*[VT_I4:0]*/;
  _args[2] = step /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMathematic2DDispT<T>::ksDistancePntPntOnCurve(long curve, double x1, double y1, double x2, 
                                                double y2)
{
  _TDispID _dispid(*this, OLETEXT("ksDistancePntPntOnCurve"), DISPID(42));
  TAutoArgs<5> _args;
  _args[1] = curve /*[VT_I4:0]*/;
  _args[2] = x1 /*[VT_R8:0]*/;
  _args[3] = y1 /*[VT_R8:0]*/;
  _args[4] = x2 /*[VT_R8:0]*/;
  _args[5] = y2 /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksMathematic2DDispT<T>::ksGetCurvePointProjectionEx(long curve, double x, double y, double* kx, 
                                                    double* ky, double* t)
{
  _TDispID _dispid(*this, OLETEXT("ksGetCurvePointProjectionEx"), DISPID(43));
  TAutoArgs<6> _args;
  _args[1] = curve /*[VT_I4:0]*/;
  _args[2] = x /*[VT_R8:0]*/;
  _args[3] = y /*[VT_R8:0]*/;
  _args[4] = kx /*[VT_R8:1]*/;
  _args[5] = ky /*[VT_R8:1]*/;
  _args[6] = t /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksMathematic2DDispT<T>::ksGetCurvePoint(long curve, double t, double* x, double* y)
{
  _TDispID _dispid(*this, OLETEXT("ksGetCurvePoint"), DISPID(44));
  TAutoArgs<4> _args;
  _args[1] = curve /*[VT_I4:0]*/;
  _args[2] = t /*[VT_R8:0]*/;
  _args[3] = x /*[VT_R8:1]*/;
  _args[4] = y /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksMathematic2DDispT<T>::ksGetCurveMinMaxParametr(long curve, double* tMin, double* tMax)
{
  _TDispID _dispid(*this, OLETEXT("ksGetCurveMinMaxParametr"), DISPID(45));
  TAutoArgs<3> _args;
  _args[1] = curve /*[VT_I4:0]*/;
  _args[2] = tMin /*[VT_R8:1]*/;
  _args[3] = tMax /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMathematic2DDispT<T>::ksDistanceT1T2OnCurve(long curve, double t1, double t2)
{
  _TDispID _dispid(*this, OLETEXT("ksDistanceT1T2OnCurve"), DISPID(46));
  TAutoArgs<3> _args;
  _args[1] = curve /*[VT_I4:0]*/;
  _args[2] = t1 /*[VT_R8:0]*/;
  _args[3] = t2 /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksMathematic2DDispT<T>::ksTanCurvCurv(long p1, long p2, LPDISPATCH pointArr1, LPDISPATCH pointArr2)
{
  _TDispID _dispid(*this, OLETEXT("ksTanCurvCurv"), DISPID(47));
  TAutoArgs<4> _args;
  _args[1] = p1 /*[VT_I4:0]*/;
  _args[2] = p2 /*[VT_I4:0]*/;
  _args[3] = pointArr1 /*[VT_DISPATCH:0]*/;
  _args[4] = pointArr2 /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksDynamicArray
// Flags:     (4096) Dispatchable
// GUID:      {4D91CD9A-6E02-409D-9360-CF7FEF60D31C}
// *********************************************************************//
template <class T> void __fastcall
ksDynamicArrayDispT<T>::set_reference(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("reference"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksDynamicArrayDispT<T>::get_reference()
{
  _TDispID _dispid(*this, OLETEXT("reference"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDynamicArrayDispT<T>::ksDeleteArray()
{
  _TDispID _dispid(*this, OLETEXT("ksDeleteArray"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDynamicArrayDispT<T>::ksClearArray()
{
  _TDispID _dispid(*this, OLETEXT("ksClearArray"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDynamicArrayDispT<T>::ksGetArrayCount()
{
  _TDispID _dispid(*this, OLETEXT("ksGetArrayCount"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDynamicArrayDispT<T>::ksGetArrayType()
{
  _TDispID _dispid(*this, OLETEXT("ksGetArrayType"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDynamicArrayDispT<T>::ksExcludeArrayItem(long index)
{
  _TDispID _dispid(*this, OLETEXT("ksExcludeArrayItem"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDynamicArrayDispT<T>::ksAddArrayItem(long index, LPDISPATCH item)
{
  _TDispID _dispid(*this, OLETEXT("ksAddArrayItem"), DISPID(7));
  TAutoArgs<2> _args;
  _args[1] = index /*[VT_I4:0]*/;
  _args[2] = item /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDynamicArrayDispT<T>::ksGetArrayItem(long index, LPDISPATCH item)
{
  _TDispID _dispid(*this, OLETEXT("ksGetArrayItem"), DISPID(8));
  TAutoArgs<2> _args;
  _args[1] = index /*[VT_I4:0]*/;
  _args[2] = item /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDynamicArrayDispT<T>::ksSetArrayItem(long index, LPDISPATCH item)
{
  _TDispID _dispid(*this, OLETEXT("ksSetArrayItem"), DISPID(9));
  TAutoArgs<2> _args;
  _args[1] = index /*[VT_I4:0]*/;
  _args[2] = item /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksRDimDrawingParam
// Flags:     (4096) Dispatchable
// GUID:      {2A4D4542-95B3-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksRDimDrawingParamDispT<T>::set_pt1(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("pt1"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksRDimDrawingParamDispT<T>::get_pt1()
{
  _TDispID _dispid(*this, OLETEXT("pt1"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRDimDrawingParamDispT<T>::set_pt2(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("pt2"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksRDimDrawingParamDispT<T>::get_pt2()
{
  _TDispID _dispid(*this, OLETEXT("pt2"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRDimDrawingParamDispT<T>::set_textPos(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("textPos"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksRDimDrawingParamDispT<T>::get_textPos()
{
  _TDispID _dispid(*this, OLETEXT("textPos"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRDimDrawingParamDispT<T>::set_ang(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRDimDrawingParamDispT<T>::get_ang()
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRDimDrawingParamDispT<T>::set_shelfDir(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("shelfDir"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksRDimDrawingParamDispT<T>::get_shelfDir()
{
  _TDispID _dispid(*this, OLETEXT("shelfDir"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRDimDrawingParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksRDimSourceParam
// Flags:     (4096) Dispatchable
// GUID:      {2A4D4545-95B3-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksRDimSourceParamDispT<T>::set_xc(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("xc"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRDimSourceParamDispT<T>::get_xc()
{
  _TDispID _dispid(*this, OLETEXT("xc"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRDimSourceParamDispT<T>::set_yc(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("yc"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRDimSourceParamDispT<T>::get_yc()
{
  _TDispID _dispid(*this, OLETEXT("yc"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRDimSourceParamDispT<T>::set_rad(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("rad"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRDimSourceParamDispT<T>::get_rad()
{
  _TDispID _dispid(*this, OLETEXT("rad"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRDimSourceParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksRDimParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F81-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> LPDISPATCH __fastcall
ksRDimParamDispT<T>::GetTPar()
{
  _TDispID _dispid(*this, OLETEXT("GetTPar"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRDimParamDispT<T>::SetTPar(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetTPar"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksRDimParamDispT<T>::GetDPar()
{
  _TDispID _dispid(*this, OLETEXT("GetDPar"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRDimParamDispT<T>::SetDPar(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetDPar"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksRDimParamDispT<T>::GetSPar()
{
  _TDispID _dispid(*this, OLETEXT("GetSPar"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRDimParamDispT<T>::SetSPar(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetSPar"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksLineSegParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F84-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksLineSegParamDispT<T>::set_x1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x1"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksLineSegParamDispT<T>::get_x1()
{
  _TDispID _dispid(*this, OLETEXT("x1"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLineSegParamDispT<T>::set_y1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y1"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksLineSegParamDispT<T>::get_y1()
{
  _TDispID _dispid(*this, OLETEXT("y1"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLineSegParamDispT<T>::set_x2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x2"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksLineSegParamDispT<T>::get_x2()
{
  _TDispID _dispid(*this, OLETEXT("x2"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLineSegParamDispT<T>::set_y2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y2"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksLineSegParamDispT<T>::get_y2()
{
  _TDispID _dispid(*this, OLETEXT("y2"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLineSegParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksLineSegParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksLineSegParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCircleParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F87-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksCircleParamDispT<T>::set_xc(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("xc"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCircleParamDispT<T>::get_xc()
{
  _TDispID _dispid(*this, OLETEXT("xc"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCircleParamDispT<T>::set_yc(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("yc"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCircleParamDispT<T>::get_yc()
{
  _TDispID _dispid(*this, OLETEXT("yc"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCircleParamDispT<T>::set_rad(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("rad"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCircleParamDispT<T>::get_rad()
{
  _TDispID _dispid(*this, OLETEXT("rad"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCircleParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksCircleParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCircleParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksArcByAngleParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F8A-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksArcByAngleParamDispT<T>::set_xc(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("xc"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksArcByAngleParamDispT<T>::get_xc()
{
  _TDispID _dispid(*this, OLETEXT("xc"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksArcByAngleParamDispT<T>::set_yc(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("yc"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksArcByAngleParamDispT<T>::get_yc()
{
  _TDispID _dispid(*this, OLETEXT("yc"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksArcByAngleParamDispT<T>::set_rad(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("rad"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksArcByAngleParamDispT<T>::get_rad()
{
  _TDispID _dispid(*this, OLETEXT("rad"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksArcByAngleParamDispT<T>::set_ang1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ang1"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksArcByAngleParamDispT<T>::get_ang1()
{
  _TDispID _dispid(*this, OLETEXT("ang1"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksArcByAngleParamDispT<T>::set_ang2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ang2"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksArcByAngleParamDispT<T>::get_ang2()
{
  _TDispID _dispid(*this, OLETEXT("ang2"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksArcByAngleParamDispT<T>::set_dir(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("dir"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksArcByAngleParamDispT<T>::get_dir()
{
  _TDispID _dispid(*this, OLETEXT("dir"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksArcByAngleParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksArcByAngleParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksArcByAngleParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksArcByPointParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F8D-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksArcByPointParamDispT<T>::set_xc(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("xc"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksArcByPointParamDispT<T>::get_xc()
{
  _TDispID _dispid(*this, OLETEXT("xc"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksArcByPointParamDispT<T>::set_yc(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("yc"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksArcByPointParamDispT<T>::get_yc()
{
  _TDispID _dispid(*this, OLETEXT("yc"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksArcByPointParamDispT<T>::set_rad(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("rad"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksArcByPointParamDispT<T>::get_rad()
{
  _TDispID _dispid(*this, OLETEXT("rad"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksArcByPointParamDispT<T>::set_x1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x1"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksArcByPointParamDispT<T>::get_x1()
{
  _TDispID _dispid(*this, OLETEXT("x1"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksArcByPointParamDispT<T>::set_y1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y1"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksArcByPointParamDispT<T>::get_y1()
{
  _TDispID _dispid(*this, OLETEXT("y1"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksArcByPointParamDispT<T>::set_x2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x2"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksArcByPointParamDispT<T>::get_x2()
{
  _TDispID _dispid(*this, OLETEXT("x2"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksArcByPointParamDispT<T>::set_y2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y2"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksArcByPointParamDispT<T>::get_y2()
{
  _TDispID _dispid(*this, OLETEXT("y2"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksArcByPointParamDispT<T>::set_dir(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("dir"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksArcByPointParamDispT<T>::get_dir()
{
  _TDispID _dispid(*this, OLETEXT("dir"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksArcByPointParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksArcByPointParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksArcByPointParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksPointParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F90-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksPointParamDispT<T>::set_x(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksPointParamDispT<T>::get_x()
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksPointParamDispT<T>::set_y(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksPointParamDispT<T>::get_y()
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksPointParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksPointParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPointParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksHatchParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F93-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksHatchParamDispT<T>::set_x(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksHatchParamDispT<T>::get_x()
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksHatchParamDispT<T>::set_y(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksHatchParamDispT<T>::get_y()
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksHatchParamDispT<T>::set_step(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("step"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksHatchParamDispT<T>::get_step()
{
  _TDispID _dispid(*this, OLETEXT("step"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksHatchParamDispT<T>::set_ang(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksHatchParamDispT<T>::get_ang()
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksHatchParamDispT<T>::set_width(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("width"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksHatchParamDispT<T>::get_width()
{
  _TDispID _dispid(*this, OLETEXT("width"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksHatchParamDispT<T>::set_boundaries(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("boundaries"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksHatchParamDispT<T>::get_boundaries()
{
  _TDispID _dispid(*this, OLETEXT("boundaries"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksHatchParamDispT<T>::set_color(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("color"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksHatchParamDispT<T>::get_color()
{
  _TDispID _dispid(*this, OLETEXT("color"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksHatchParamDispT<T>::set_sheeting(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("sheeting"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksHatchParamDispT<T>::get_sheeting()
{
  _TDispID _dispid(*this, OLETEXT("sheeting"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksHatchParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksHatchParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksHatchParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksTextParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F96-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksTextParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksTextParamDispT<T>::GetParagraphParam()
{
  _TDispID _dispid(*this, OLETEXT("GetParagraphParam"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksTextParamDispT<T>::SetParagraphParam(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetParagraphParam"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksTextParamDispT<T>::GetTextLineArr()
{
  _TDispID _dispid(*this, OLETEXT("GetTextLineArr"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksTextParamDispT<T>::SetTextLineArr(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetTextLineArr"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksNurbsPointParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F99-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksNurbsPointParamDispT<T>::set_x(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksNurbsPointParamDispT<T>::get_x()
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksNurbsPointParamDispT<T>::set_y(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksNurbsPointParamDispT<T>::get_y()
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksNurbsPointParamDispT<T>::set_weight(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("weight"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksNurbsPointParamDispT<T>::get_weight()
{
  _TDispID _dispid(*this, OLETEXT("weight"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsPointParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksDoubleValue
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F9C-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksDoubleValueDispT<T>::set_value(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("value"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksDoubleValueDispT<T>::get_value()
{
  _TDispID _dispid(*this, OLETEXT("value"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDoubleValueDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksNurbsParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6F9F-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksNurbsParamDispT<T>::set_degree(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("degree"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksNurbsParamDispT<T>::get_degree()
{
  _TDispID _dispid(*this, OLETEXT("degree"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksNurbsParamDispT<T>::set_close(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("close"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksNurbsParamDispT<T>::get_close()
{
  _TDispID _dispid(*this, OLETEXT("close"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksNurbsParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksNurbsParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsParamDispT<T>::get_periodic()
{
  _TDispID _dispid(*this, OLETEXT("periodic"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksNurbsParamDispT<T>::GetPPoint()
{
  _TDispID _dispid(*this, OLETEXT("GetPPoint"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsParamDispT<T>::SetPPoint(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetPPoint"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksNurbsParamDispT<T>::GetPKnot()
{
  _TDispID _dispid(*this, OLETEXT("GetPKnot"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsParamDispT<T>::SetPKnot(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetPKnot"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksConicArcParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FA2-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksConicArcParamDispT<T>::set_A(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("A"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksConicArcParamDispT<T>::get_A()
{
  _TDispID _dispid(*this, OLETEXT("A"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicArcParamDispT<T>::set_B(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("B"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksConicArcParamDispT<T>::get_B()
{
  _TDispID _dispid(*this, OLETEXT("B"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicArcParamDispT<T>::set_C(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("C"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksConicArcParamDispT<T>::get_C()
{
  _TDispID _dispid(*this, OLETEXT("C"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicArcParamDispT<T>::set_D(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("D"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksConicArcParamDispT<T>::get_D()
{
  _TDispID _dispid(*this, OLETEXT("D"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicArcParamDispT<T>::set_E(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("E"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksConicArcParamDispT<T>::get_E()
{
  _TDispID _dispid(*this, OLETEXT("E"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicArcParamDispT<T>::set_F(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("F"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksConicArcParamDispT<T>::get_F()
{
  _TDispID _dispid(*this, OLETEXT("F"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicArcParamDispT<T>::set_x1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x1"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksConicArcParamDispT<T>::get_x1()
{
  _TDispID _dispid(*this, OLETEXT("x1"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicArcParamDispT<T>::set_y1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y1"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksConicArcParamDispT<T>::get_y1()
{
  _TDispID _dispid(*this, OLETEXT("y1"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicArcParamDispT<T>::set_x2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x2"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksConicArcParamDispT<T>::get_x2()
{
  _TDispID _dispid(*this, OLETEXT("x2"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicArcParamDispT<T>::set_y2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y2"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksConicArcParamDispT<T>::get_y2()
{
  _TDispID _dispid(*this, OLETEXT("y2"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicArcParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksConicArcParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(11));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksConicArcParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(12));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCentreParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FA5-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksCentreParamDispT<T>::set_baseCurve(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("baseCurve"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksCentreParamDispT<T>::get_baseCurve()
{
  _TDispID _dispid(*this, OLETEXT("baseCurve"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCentreParamDispT<T>::set_x(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCentreParamDispT<T>::get_x()
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCentreParamDispT<T>::set_y(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCentreParamDispT<T>::get_y()
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCentreParamDispT<T>::set_angle(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCentreParamDispT<T>::get_angle()
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCentreParamDispT<T>::set_type(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksCentreParamDispT<T>::get_type()
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCentreParamDispT<T>::set_standXpTail(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("standXpTail"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCentreParamDispT<T>::get_standXpTail()
{
  _TDispID _dispid(*this, OLETEXT("standXpTail"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCentreParamDispT<T>::set_standXmTail(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("standXmTail"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCentreParamDispT<T>::get_standXmTail()
{
  _TDispID _dispid(*this, OLETEXT("standXmTail"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCentreParamDispT<T>::set_standYpTail(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("standYpTail"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCentreParamDispT<T>::get_standYpTail()
{
  _TDispID _dispid(*this, OLETEXT("standYpTail"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCentreParamDispT<T>::set_standYmTail(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("standYmTail"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCentreParamDispT<T>::get_standYmTail()
{
  _TDispID _dispid(*this, OLETEXT("standYmTail"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCentreParamDispT<T>::set_lenXpTail(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("lenXpTail"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCentreParamDispT<T>::get_lenXpTail()
{
  _TDispID _dispid(*this, OLETEXT("lenXpTail"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCentreParamDispT<T>::set_lenXmTail(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("lenXmTail"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCentreParamDispT<T>::get_lenXmTail()
{
  _TDispID _dispid(*this, OLETEXT("lenXmTail"), DISPID(11));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCentreParamDispT<T>::set_lenYpTail(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("lenYpTail"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCentreParamDispT<T>::get_lenYpTail()
{
  _TDispID _dispid(*this, OLETEXT("lenYpTail"), DISPID(12));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCentreParamDispT<T>::set_lenYmTail(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("lenYmTail"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCentreParamDispT<T>::get_lenYmTail()
{
  _TDispID _dispid(*this, OLETEXT("lenYmTail"), DISPID(13));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCentreParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(14));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksPlacementParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FA8-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksPlacementParamDispT<T>::set_xBase(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("xBase"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksPlacementParamDispT<T>::get_xBase()
{
  _TDispID _dispid(*this, OLETEXT("xBase"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksPlacementParamDispT<T>::set_yBase(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("yBase"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksPlacementParamDispT<T>::get_yBase()
{
  _TDispID _dispid(*this, OLETEXT("yBase"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksPlacementParamDispT<T>::set_scale_(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("scale_"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksPlacementParamDispT<T>::get_scale_()
{
  _TDispID _dispid(*this, OLETEXT("scale_"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksPlacementParamDispT<T>::set_angle(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksPlacementParamDispT<T>::get_angle()
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPlacementParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksRasterParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FAB-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksRasterParamDispT<T>::set_fileName(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("fileName"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksRasterParamDispT<T>::get_fileName()
{
  _TDispID _dispid(*this, OLETEXT("fileName"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRasterParamDispT<T>::set_embeded(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("embeded"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksRasterParamDispT<T>::get_embeded()
{
  _TDispID _dispid(*this, OLETEXT("embeded"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRasterParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksRasterParamDispT<T>::GetPlace()
{
  _TDispID _dispid(*this, OLETEXT("GetPlace"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRasterParamDispT<T>::SetPlace(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetPlace"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksPolylineParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FAE-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksPolylineParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksPolylineParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksPolylineParamDispT<T>::set_closed(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("closed"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksPolylineParamDispT<T>::get_closed()
{
  _TDispID _dispid(*this, OLETEXT("closed"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPolylineParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPolylineParamDispT<T>::GetpMathPoint()
{
  _TDispID _dispid(*this, OLETEXT("GetpMathPoint"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPolylineParamDispT<T>::SetpMathPoint(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetpMathPoint"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksInsertFragmentParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FB1-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksInsertFragmentParamDispT<T>::set_fileName(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("fileName"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksInsertFragmentParamDispT<T>::get_fileName()
{
  _TDispID _dispid(*this, OLETEXT("fileName"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksInsertFragmentParamDispT<T>::set_comment(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("comment"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksInsertFragmentParamDispT<T>::get_comment()
{
  _TDispID _dispid(*this, OLETEXT("comment"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksInsertFragmentParamDispT<T>::set_insertType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("insertType"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksInsertFragmentParamDispT<T>::get_insertType()
{
  _TDispID _dispid(*this, OLETEXT("insertType"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksInsertFragmentParamDispT<T>::set_multiLayer(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("multiLayer"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksInsertFragmentParamDispT<T>::get_multiLayer()
{
  _TDispID _dispid(*this, OLETEXT("multiLayer"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksInsertFragmentParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksInsertFragmentParamDispT<T>::GetPlace()
{
  _TDispID _dispid(*this, OLETEXT("GetPlace"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksInsertFragmentParamDispT<T>::SetPlace(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetPlace"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksViewParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FB4-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksViewParamDispT<T>::set_x(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksViewParamDispT<T>::get_x()
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksViewParamDispT<T>::set_y(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksViewParamDispT<T>::get_y()
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksViewParamDispT<T>::set_angle(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksViewParamDispT<T>::get_angle()
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksViewParamDispT<T>::set_scale_(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("scale_"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksViewParamDispT<T>::get_scale_()
{
  _TDispID _dispid(*this, OLETEXT("scale_"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksViewParamDispT<T>::set_color(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("color"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksViewParamDispT<T>::get_color()
{
  _TDispID _dispid(*this, OLETEXT("color"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksViewParamDispT<T>::set_state(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("state"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksViewParamDispT<T>::get_state()
{
  _TDispID _dispid(*this, OLETEXT("state"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksViewParamDispT<T>::set_name(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksViewParamDispT<T>::get_name()
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksViewParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksLBreakDimSource
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FB7-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksLBreakDimSourceDispT<T>::set_x1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x1"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksLBreakDimSourceDispT<T>::get_x1()
{
  _TDispID _dispid(*this, OLETEXT("x1"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLBreakDimSourceDispT<T>::set_y1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y1"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksLBreakDimSourceDispT<T>::get_y1()
{
  _TDispID _dispid(*this, OLETEXT("y1"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLBreakDimSourceDispT<T>::set_x2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x2"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksLBreakDimSourceDispT<T>::get_x2()
{
  _TDispID _dispid(*this, OLETEXT("x2"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLBreakDimSourceDispT<T>::set_y2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y2"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksLBreakDimSourceDispT<T>::get_y2()
{
  _TDispID _dispid(*this, OLETEXT("y2"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLBreakDimSourceDispT<T>::set_x3(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x3"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksLBreakDimSourceDispT<T>::get_x3()
{
  _TDispID _dispid(*this, OLETEXT("x3"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLBreakDimSourceDispT<T>::set_y3(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y3"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksLBreakDimSourceDispT<T>::get_y3()
{
  _TDispID _dispid(*this, OLETEXT("y3"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksLBreakDimSourceDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksBreakDimDrawing
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FBA-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksBreakDimDrawingDispT<T>::set_pl(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("pl"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksBreakDimDrawingDispT<T>::get_pl()
{
  _TDispID _dispid(*this, OLETEXT("pl"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBreakDimDrawingDispT<T>::set_pt(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("pt"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksBreakDimDrawingDispT<T>::get_pt()
{
  _TDispID _dispid(*this, OLETEXT("pt"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBreakDimDrawingDispT<T>::set_textPos(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("textPos"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksBreakDimDrawingDispT<T>::get_textPos()
{
  _TDispID _dispid(*this, OLETEXT("textPos"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBreakDimDrawingDispT<T>::set_shelfDir(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("shelfDir"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksBreakDimDrawingDispT<T>::get_shelfDir()
{
  _TDispID _dispid(*this, OLETEXT("shelfDir"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBreakDimDrawingDispT<T>::set_angle(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksBreakDimDrawingDispT<T>::get_angle()
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBreakDimDrawingDispT<T>::set_length(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("length"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksBreakDimDrawingDispT<T>::get_length()
{
  _TDispID _dispid(*this, OLETEXT("length"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBreakDimDrawingDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksLBreakDimParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FBD-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> LPDISPATCH __fastcall
ksLBreakDimParamDispT<T>::GetTPar()
{
  _TDispID _dispid(*this, OLETEXT("GetTPar"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksLBreakDimParamDispT<T>::SetTPar(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetTPar"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksLBreakDimParamDispT<T>::GetDPar()
{
  _TDispID _dispid(*this, OLETEXT("GetDPar"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksLBreakDimParamDispT<T>::SetDPar(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetDPar"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksLBreakDimParamDispT<T>::GetSPar()
{
  _TDispID _dispid(*this, OLETEXT("GetSPar"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksLBreakDimParamDispT<T>::SetSPar(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetSPar"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksABreakDimParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FC0-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> LPDISPATCH __fastcall
ksABreakDimParamDispT<T>::GetTPar()
{
  _TDispID _dispid(*this, OLETEXT("GetTPar"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksABreakDimParamDispT<T>::SetTPar(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetTPar"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksABreakDimParamDispT<T>::GetDPar()
{
  _TDispID _dispid(*this, OLETEXT("GetDPar"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksABreakDimParamDispT<T>::SetDPar(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetDPar"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksABreakDimParamDispT<T>::GetSPar()
{
  _TDispID _dispid(*this, OLETEXT("GetSPar"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksABreakDimParamDispT<T>::SetSPar(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetSPar"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksInsertFragmentParamEx
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FC3-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksInsertFragmentParamExDispT<T>::set_fileName(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("fileName"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksInsertFragmentParamExDispT<T>::get_fileName()
{
  _TDispID _dispid(*this, OLETEXT("fileName"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksInsertFragmentParamExDispT<T>::set_comment(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("comment"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksInsertFragmentParamExDispT<T>::get_comment()
{
  _TDispID _dispid(*this, OLETEXT("comment"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksInsertFragmentParamExDispT<T>::set_insertType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("insertType"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksInsertFragmentParamExDispT<T>::get_insertType()
{
  _TDispID _dispid(*this, OLETEXT("insertType"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksInsertFragmentParamExDispT<T>::set_multiLayer(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("multiLayer"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksInsertFragmentParamExDispT<T>::get_multiLayer()
{
  _TDispID _dispid(*this, OLETEXT("multiLayer"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksInsertFragmentParamExDispT<T>::set_scaleProjLinesSize(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("scaleProjLinesSize"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksInsertFragmentParamExDispT<T>::get_scaleProjLinesSize()
{
  _TDispID _dispid(*this, OLETEXT("scaleProjLinesSize"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksInsertFragmentParamExDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksInsertFragmentParamExDispT<T>::GetPlace()
{
  _TDispID _dispid(*this, OLETEXT("GetPlace"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksInsertFragmentParamExDispT<T>::SetPlace(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetPlace"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksBezierParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FC6-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksBezierParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksBezierParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBezierParamDispT<T>::set_closed(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("closed"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksBezierParamDispT<T>::get_closed()
{
  _TDispID _dispid(*this, OLETEXT("closed"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBezierParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBezierParamDispT<T>::GetMathPointArr()
{
  _TDispID _dispid(*this, OLETEXT("GetMathPointArr"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBezierParamDispT<T>::SetMathPointArr(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetMathPointArr"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksBezierPointParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FC9-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksBezierPointParamDispT<T>::set_x(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksBezierPointParamDispT<T>::get_x()
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBezierPointParamDispT<T>::set_y(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksBezierPointParamDispT<T>::get_y()
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBezierPointParamDispT<T>::set_ang(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksBezierPointParamDispT<T>::get_ang()
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBezierPointParamDispT<T>::set_left(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("left"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksBezierPointParamDispT<T>::get_left()
{
  _TDispID _dispid(*this, OLETEXT("left"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBezierPointParamDispT<T>::set_right(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("right"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksBezierPointParamDispT<T>::get_right()
{
  _TDispID _dispid(*this, OLETEXT("right"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBezierPointParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksDimTextParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FCC-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksDimTextParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksDimTextParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimTextParamDispT<T>::set_sign(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("sign"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksDimTextParamDispT<T>::get_sign()
{
  _TDispID _dispid(*this, OLETEXT("sign"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimTextParamDispT<T>::set_stringFlag(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("stringFlag"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksDimTextParamDispT<T>::get_stringFlag()
{
  _TDispID _dispid(*this, OLETEXT("stringFlag"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimTextParamDispT<T>::set_bitFlag(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("bitFlag"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksDimTextParamDispT<T>::get_bitFlag()
{
  _TDispID _dispid(*this, OLETEXT("bitFlag"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDimTextParamDispT<T>::Init(TOLEBOOL stringFlag)
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = stringFlag /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDimTextParamDispT<T>::GetBitFlagValue(long bitFlag)
{
  _TDispID _dispid(*this, OLETEXT("GetBitFlagValue"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = bitFlag /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDimTextParamDispT<T>::SetBitFlagValue(long val, TOLEBOOL state)
{
  _TDispID _dispid(*this, OLETEXT("SetBitFlagValue"), DISPID(7));
  TAutoArgs<2> _args;
  _args[1] = val /*[VT_I4:0]*/;
  _args[2] = state /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDimTextParamDispT<T>::GetTextArr()
{
  _TDispID _dispid(*this, OLETEXT("GetTextArr"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDimTextParamDispT<T>::SetTextArr(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetTextArr"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksLDimSourceParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FCF-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksLDimSourceParamDispT<T>::set_x1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x1"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksLDimSourceParamDispT<T>::get_x1()
{
  _TDispID _dispid(*this, OLETEXT("x1"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLDimSourceParamDispT<T>::set_y1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y1"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksLDimSourceParamDispT<T>::get_y1()
{
  _TDispID _dispid(*this, OLETEXT("y1"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLDimSourceParamDispT<T>::set_x2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x2"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksLDimSourceParamDispT<T>::get_x2()
{
  _TDispID _dispid(*this, OLETEXT("x2"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLDimSourceParamDispT<T>::set_y2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y2"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksLDimSourceParamDispT<T>::get_y2()
{
  _TDispID _dispid(*this, OLETEXT("y2"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLDimSourceParamDispT<T>::set_dx(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("dx"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksLDimSourceParamDispT<T>::get_dx()
{
  _TDispID _dispid(*this, OLETEXT("dx"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLDimSourceParamDispT<T>::set_dy(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("dy"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksLDimSourceParamDispT<T>::get_dy()
{
  _TDispID _dispid(*this, OLETEXT("dy"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLDimSourceParamDispT<T>::set_ps(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ps"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksLDimSourceParamDispT<T>::get_ps()
{
  _TDispID _dispid(*this, OLETEXT("ps"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLDimSourceParamDispT<T>::set_basePoint(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("basePoint"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksLDimSourceParamDispT<T>::get_basePoint()
{
  _TDispID _dispid(*this, OLETEXT("basePoint"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksLDimSourceParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksDimDrawingParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FD2-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksDimDrawingParamDispT<T>::set_pl1(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("pl1"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksDimDrawingParamDispT<T>::get_pl1()
{
  _TDispID _dispid(*this, OLETEXT("pl1"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimDrawingParamDispT<T>::set_pl2(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("pl2"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksDimDrawingParamDispT<T>::get_pl2()
{
  _TDispID _dispid(*this, OLETEXT("pl2"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimDrawingParamDispT<T>::set_pt1(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("pt1"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksDimDrawingParamDispT<T>::get_pt1()
{
  _TDispID _dispid(*this, OLETEXT("pt1"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimDrawingParamDispT<T>::set_pt2(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("pt2"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksDimDrawingParamDispT<T>::get_pt2()
{
  _TDispID _dispid(*this, OLETEXT("pt2"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimDrawingParamDispT<T>::set_textPos(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("textPos"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksDimDrawingParamDispT<T>::get_textPos()
{
  _TDispID _dispid(*this, OLETEXT("textPos"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimDrawingParamDispT<T>::set_textBase(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("textBase"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksDimDrawingParamDispT<T>::get_textBase()
{
  _TDispID _dispid(*this, OLETEXT("textBase"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimDrawingParamDispT<T>::set_shelfDir(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("shelfDir"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksDimDrawingParamDispT<T>::get_shelfDir()
{
  _TDispID _dispid(*this, OLETEXT("shelfDir"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimDrawingParamDispT<T>::set_ang(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksDimDrawingParamDispT<T>::get_ang()
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimDrawingParamDispT<T>::set_lenght(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("lenght"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksDimDrawingParamDispT<T>::get_lenght()
{
  _TDispID _dispid(*this, OLETEXT("lenght"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDimDrawingParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksLDimParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FD5-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> LPDISPATCH __fastcall
ksLDimParamDispT<T>::GetTPar()
{
  _TDispID _dispid(*this, OLETEXT("GetTPar"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksLDimParamDispT<T>::SetTPar(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetTPar"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksLDimParamDispT<T>::GetDPar()
{
  _TDispID _dispid(*this, OLETEXT("GetDPar"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksLDimParamDispT<T>::SetDPar(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetDPar"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksLDimParamDispT<T>::GetSPar()
{
  _TDispID _dispid(*this, OLETEXT("GetSPar"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksLDimParamDispT<T>::SetSPar(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetSPar"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksADimSourceParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FD8-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksADimSourceParamDispT<T>::set_xc(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("xc"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksADimSourceParamDispT<T>::get_xc()
{
  _TDispID _dispid(*this, OLETEXT("xc"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksADimSourceParamDispT<T>::set_yc(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("yc"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksADimSourceParamDispT<T>::get_yc()
{
  _TDispID _dispid(*this, OLETEXT("yc"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksADimSourceParamDispT<T>::set_x1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x1"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksADimSourceParamDispT<T>::get_x1()
{
  _TDispID _dispid(*this, OLETEXT("x1"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksADimSourceParamDispT<T>::set_y1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y1"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksADimSourceParamDispT<T>::get_y1()
{
  _TDispID _dispid(*this, OLETEXT("y1"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksADimSourceParamDispT<T>::set_x2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x2"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksADimSourceParamDispT<T>::get_x2()
{
  _TDispID _dispid(*this, OLETEXT("x2"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksADimSourceParamDispT<T>::set_y2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y2"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksADimSourceParamDispT<T>::get_y2()
{
  _TDispID _dispid(*this, OLETEXT("y2"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksADimSourceParamDispT<T>::set_ang1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ang1"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksADimSourceParamDispT<T>::get_ang1()
{
  _TDispID _dispid(*this, OLETEXT("ang1"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksADimSourceParamDispT<T>::set_ang2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ang2"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksADimSourceParamDispT<T>::get_ang2()
{
  _TDispID _dispid(*this, OLETEXT("ang2"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksADimSourceParamDispT<T>::set_dir(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("dir"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksADimSourceParamDispT<T>::get_dir()
{
  _TDispID _dispid(*this, OLETEXT("dir"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksADimSourceParamDispT<T>::set_rad(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("rad"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksADimSourceParamDispT<T>::get_rad()
{
  _TDispID _dispid(*this, OLETEXT("rad"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksADimSourceParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksDimensionPartsParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FDB-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksDimensionPartsParamDispT<T>::set_line1(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("line1"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksDimensionPartsParamDispT<T>::get_line1()
{
  _TDispID _dispid(*this, OLETEXT("line1"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimensionPartsParamDispT<T>::set_line2(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("line2"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksDimensionPartsParamDispT<T>::get_line2()
{
  _TDispID _dispid(*this, OLETEXT("line2"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimensionPartsParamDispT<T>::set_dimLine(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("dimLine"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksDimensionPartsParamDispT<T>::get_dimLine()
{
  _TDispID _dispid(*this, OLETEXT("dimLine"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimensionPartsParamDispT<T>::set_dimLine1(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("dimLine1"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksDimensionPartsParamDispT<T>::get_dimLine1()
{
  _TDispID _dispid(*this, OLETEXT("dimLine1"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimensionPartsParamDispT<T>::set_leg(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("leg"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksDimensionPartsParamDispT<T>::get_leg()
{
  _TDispID _dispid(*this, OLETEXT("leg"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimensionPartsParamDispT<T>::set_shelf(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("shelf"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksDimensionPartsParamDispT<T>::get_shelf()
{
  _TDispID _dispid(*this, OLETEXT("shelf"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimensionPartsParamDispT<T>::set_gr(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("gr"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksDimensionPartsParamDispT<T>::get_gr()
{
  _TDispID _dispid(*this, OLETEXT("gr"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimensionPartsParamDispT<T>::set_curveExt(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("curveExt"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksDimensionPartsParamDispT<T>::get_curveExt()
{
  _TDispID _dispid(*this, OLETEXT("curveExt"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDimensionPartsParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksADimParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FDE-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> LPDISPATCH __fastcall
ksADimParamDispT<T>::GetTPar()
{
  _TDispID _dispid(*this, OLETEXT("GetTPar"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksADimParamDispT<T>::SetTPar(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetTPar"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksADimParamDispT<T>::GetDPar()
{
  _TDispID _dispid(*this, OLETEXT("GetDPar"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksADimParamDispT<T>::SetDPar(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetDPar"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksADimParamDispT<T>::GetSPar()
{
  _TDispID _dispid(*this, OLETEXT("GetSPar"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksADimParamDispT<T>::SetSPar(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetSPar"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksRBreakDrawingParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FE1-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksRBreakDrawingParamDispT<T>::set_pt(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("pt"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksRBreakDrawingParamDispT<T>::get_pt()
{
  _TDispID _dispid(*this, OLETEXT("pt"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRBreakDrawingParamDispT<T>::set_ang(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRBreakDrawingParamDispT<T>::get_ang()
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRBreakDrawingParamDispT<T>::set_pb(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("pb"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksRBreakDrawingParamDispT<T>::get_pb()
{
  _TDispID _dispid(*this, OLETEXT("pb"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRBreakDrawingParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksRBreakDimParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FE4-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> LPDISPATCH __fastcall
ksRBreakDimParamDispT<T>::GetTPar()
{
  _TDispID _dispid(*this, OLETEXT("GetTPar"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRBreakDimParamDispT<T>::SetTPar(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetTPar"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksRBreakDimParamDispT<T>::GetDPar()
{
  _TDispID _dispid(*this, OLETEXT("GetDPar"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRBreakDimParamDispT<T>::SetDPar(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetDPar"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksRBreakDimParamDispT<T>::GetSPar()
{
  _TDispID _dispid(*this, OLETEXT("GetSPar"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRBreakDimParamDispT<T>::SetSPar(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetSPar"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksQualityItemParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FE7-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksQualityItemParamDispT<T>::set_minLimit(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("minLimit"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksQualityItemParamDispT<T>::get_minLimit()
{
  _TDispID _dispid(*this, OLETEXT("minLimit"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksQualityItemParamDispT<T>::set_maxLimit(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("maxLimit"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksQualityItemParamDispT<T>::get_maxLimit()
{
  _TDispID _dispid(*this, OLETEXT("maxLimit"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksQualityItemParamDispT<T>::set_high(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("high"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksQualityItemParamDispT<T>::get_high()
{
  _TDispID _dispid(*this, OLETEXT("high"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksQualityItemParamDispT<T>::set_low(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("low"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksQualityItemParamDispT<T>::get_low()
{
  _TDispID _dispid(*this, OLETEXT("low"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksQualityItemParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksQualityContensParam
// Flags:     (4096) Dispatchable
// GUID:      {7F7D6FEA-97DA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksQualityContensParamDispT<T>::set_systemQuality(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("systemQuality"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksQualityContensParamDispT<T>::get_systemQuality()
{
  _TDispID _dispid(*this, OLETEXT("systemQuality"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksQualityContensParamDispT<T>::set_kindQuality(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("kindQuality"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksQualityContensParamDispT<T>::get_kindQuality()
{
  _TDispID _dispid(*this, OLETEXT("kindQuality"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksQualityContensParamDispT<T>::set_name(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksQualityContensParamDispT<T>::get_name()
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksQualityContensParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksQualityContensParamDispT<T>::GetpQualityItems()
{
  _TDispID _dispid(*this, OLETEXT("GetpQualityItems"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksQualityContensParamDispT<T>::SetpQualityItems(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetpQualityItems"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksIterator
// Flags:     (4096) Dispatchable
// GUID:      {D06C9101-98CA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksIteratorDispT<T>::set_reference(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("reference"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksIteratorDispT<T>::get_reference()
{
  _TDispID _dispid(*this, OLETEXT("reference"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksIteratorDispT<T>::ksCreateIterator(long tipSeartch, long parent)
{
  _TDispID _dispid(*this, OLETEXT("ksCreateIterator"), DISPID(2));
  TAutoArgs<2> _args;
  _args[1] = tipSeartch /*[VT_I4:0]*/;
  _args[2] = parent /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksIteratorDispT<T>::ksMoveIterator(BSTR ksMoveIterator)
{
  _TDispID _dispid(*this, OLETEXT("ksMoveIterator"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = ksMoveIterator /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksIteratorDispT<T>::ksCreateAttrIterator(long obj, long key1, long key2, long key3, long key4, 
                                         double numb)
{
  _TDispID _dispid(*this, OLETEXT("ksCreateAttrIterator"), DISPID(4));
  TAutoArgs<6> _args;
  _args[1] = obj /*[VT_I4:0]*/;
  _args[2] = key1 /*[VT_I4:0]*/;
  _args[3] = key2 /*[VT_I4:0]*/;
  _args[4] = key3 /*[VT_I4:0]*/;
  _args[5] = key4 /*[VT_I4:0]*/;
  _args[6] = numb /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksIteratorDispT<T>::ksMoveAttrIterator(BSTR ch, long* pObj)
{
  _TDispID _dispid(*this, OLETEXT("ksMoveAttrIterator"), DISPID(5));
  TAutoArgs<2> _args;
  _args[1] = ch /*[VT_BSTR:0]*/;
  _args[2] = pObj /*[VT_I4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksIteratorDispT<T>::ksCreateSpcIterator(BSTR nameLib, long styleNumb, long spcObjType)
{
  _TDispID _dispid(*this, OLETEXT("ksCreateSpcIterator"), DISPID(6));
  TAutoArgs<3> _args;
  _args[1] = nameLib /*[VT_BSTR:0]*/;
  _args[2] = styleNumb /*[VT_I4:0]*/;
  _args[3] = spcObjType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksIteratorDispT<T>::ksCreateQualityIterator(short system, short withLimitation)
{
  _TDispID _dispid(*this, OLETEXT("ksCreateQualityIterator"), DISPID(7));
  TAutoArgs<2> _args;
  _args[1] = system /*[VT_I2:0]*/;
  _args[2] = withLimitation /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksIteratorDispT<T>::ksMoveQualityIterator(LPDISPATCH param, short inMM, BSTR ch)
{
  _TDispID _dispid(*this, OLETEXT("ksMoveQualityIterator"), DISPID(8));
  TAutoArgs<3> _args;
  _args[1] = param /*[VT_DISPATCH:0]*/;
  _args[2] = inMM /*[VT_I2:0]*/;
  _args[3] = ch /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksIteratorDispT<T>::ksDeleteIterator()
{
  _TDispID _dispid(*this, OLETEXT("ksDeleteIterator"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksFragment
// Flags:     (4096) Dispatchable
// GUID:      {D06C9104-98CA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> long __fastcall
ksFragmentDispT<T>::ksFragmentDefinition(BSTR fileName, BSTR comment, short insertType)
{
  _TDispID _dispid(*this, OLETEXT("ksFragmentDefinition"), DISPID(1));
  TAutoArgs<3> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = comment /*[VT_BSTR:0]*/;
  _args[3] = insertType /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksFragmentDispT<T>::ksInsertFragment(long p, TOLEBOOL curentLayer, LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksInsertFragment"), DISPID(2));
  TAutoArgs<3> _args;
  _args[1] = p /*[VT_I4:0]*/;
  _args[2] = curentLayer /*[VT_BOOL:0]*/;
  _args[3] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksFragmentDispT<T>::ksReadFragment(BSTR fileName, TOLEBOOL curentLayer, LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksReadFragment"), DISPID(3));
  TAutoArgs<3> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = curentLayer /*[VT_BOOL:0]*/;
  _args[3] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksFragmentDispT<T>::ksReadFragmentToGroup(BSTR fileName, TOLEBOOL curentLayer, LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksReadFragmentToGroup"), DISPID(4));
  TAutoArgs<3> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = curentLayer /*[VT_BOOL:0]*/;
  _args[3] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksFragmentDispT<T>::ksReadFragmentToGroupEx(BSTR fileName, TOLEBOOL curentLayer, LPDISPATCH par, 
                                            TOLEBOOL scaleProjLinesSize)
{
  _TDispID _dispid(*this, OLETEXT("ksReadFragmentToGroupEx"), DISPID(5));
  TAutoArgs<4> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = curentLayer /*[VT_BOOL:0]*/;
  _args[3] = par /*[VT_DISPATCH:0]*/;
  _args[4] = scaleProjLinesSize /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksFragmentDispT<T>::ksWriteFragment(long gr, BSTR fileName, BSTR comment, double xb, double yb)
{
  _TDispID _dispid(*this, OLETEXT("ksWriteFragment"), DISPID(6));
  TAutoArgs<5> _args;
  _args[1] = gr /*[VT_I4:0]*/;
  _args[2] = fileName /*[VT_BSTR:0]*/;
  _args[3] = comment /*[VT_BSTR:0]*/;
  _args[4] = xb /*[VT_R8:0]*/;
  _args[5] = yb /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksFragmentDispT<T>::ksLocalFragmentDefinition(BSTR comment)
{
  _TDispID _dispid(*this, OLETEXT("ksLocalFragmentDefinition"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = comment /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksFragmentDispT<T>::ksCloseLocalFragmentDefinition()
{
  _TDispID _dispid(*this, OLETEXT("ksCloseLocalFragmentDefinition"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksFragmentDispT<T>::ksInsertFragmentEx(long p, TOLEBOOL curentLayer, LPDISPATCH par, 
                                       TOLEBOOL scaleProjLinesSize)
{
  _TDispID _dispid(*this, OLETEXT("ksInsertFragmentEx"), DISPID(9));
  TAutoArgs<4> _args;
  _args[1] = p /*[VT_I4:0]*/;
  _args[2] = curentLayer /*[VT_BOOL:0]*/;
  _args[3] = par /*[VT_DISPATCH:0]*/;
  _args[4] = scaleProjLinesSize /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksFragmentLibrary
// Flags:     (4096) Dispatchable
// GUID:      {D06C910A-98CA-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> BSTR __fastcall
ksFragmentLibraryDispT<T>::ksChoiceFragmentFromLib(BSTR frwLibFile, long* type)
{
  _TDispID _dispid(*this, OLETEXT("ksChoiceFragmentFromLib"), DISPID(1));
  TAutoArgs<2> _args;
  _args[1] = frwLibFile /*[VT_BSTR:0]*/;
  _args[2] = type /*[VT_I4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksFragmentLibraryDispT<T>::ksFragmentLibraryOperation(BSTR libName, long type)
{
  _TDispID _dispid(*this, OLETEXT("ksFragmentLibraryOperation"), DISPID(2));
  TAutoArgs<2> _args;
  _args[1] = libName /*[VT_BSTR:0]*/;
  _args[2] = type /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksFragmentLibraryDispT<T>::ksAddFragmentToLibrary(BSTR libName, BSTR frwName)
{
  _TDispID _dispid(*this, OLETEXT("ksAddFragmentToLibrary"), DISPID(3));
  TAutoArgs<2> _args;
  _args[1] = libName /*[VT_BSTR:0]*/;
  _args[2] = frwName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksFragmentLibraryDispT<T>::ksCheckFragmentLibrary(BSTR libName, TOLEBOOL possibleMessage)
{
  _TDispID _dispid(*this, OLETEXT("ksCheckFragmentLibrary"), DISPID(4));
  TAutoArgs<2> _args;
  _args[1] = libName /*[VT_BSTR:0]*/;
  _args[2] = possibleMessage /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksFragmentLibraryDispT<T>::ksExistFragmentInLibrary(BSTR frwName)
{
  _TDispID _dispid(*this, OLETEXT("ksExistFragmentInLibrary"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = frwName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksTechnicalDemandParam
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B81-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksTechnicalDemandParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksTechnicalDemandParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTechnicalDemandParamDispT<T>::set_strCount(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("strCount"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksTechnicalDemandParamDispT<T>::get_strCount()
{
  _TDispID _dispid(*this, OLETEXT("strCount"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksTechnicalDemandParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksTechnicalDemandParamDispT<T>::GetPGab()
{
  _TDispID _dispid(*this, OLETEXT("GetPGab"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksTechnicalDemandParamDispT<T>::SetPGab(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetPGab"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksOrdinatedSourceParam
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B84-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksOrdinatedSourceParamDispT<T>::set_x0(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x0"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksOrdinatedSourceParamDispT<T>::get_x0()
{
  _TDispID _dispid(*this, OLETEXT("x0"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksOrdinatedSourceParamDispT<T>::set_x1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x1"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksOrdinatedSourceParamDispT<T>::get_x1()
{
  _TDispID _dispid(*this, OLETEXT("x1"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksOrdinatedSourceParamDispT<T>::set_y1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y1"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksOrdinatedSourceParamDispT<T>::get_y1()
{
  _TDispID _dispid(*this, OLETEXT("y1"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksOrdinatedSourceParamDispT<T>::set_y0(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y0"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksOrdinatedSourceParamDispT<T>::get_y0()
{
  _TDispID _dispid(*this, OLETEXT("y0"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksOrdinatedSourceParamDispT<T>::set_x2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x2"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksOrdinatedSourceParamDispT<T>::get_x2()
{
  _TDispID _dispid(*this, OLETEXT("x2"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksOrdinatedSourceParamDispT<T>::set_y2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y2"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksOrdinatedSourceParamDispT<T>::get_y2()
{
  _TDispID _dispid(*this, OLETEXT("y2"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksOrdinatedDimParam
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B87-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksOrdinatedDimParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksOrdinatedDimParamDispT<T>::GetTPar()
{
  _TDispID _dispid(*this, OLETEXT("GetTPar"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksOrdinatedDimParamDispT<T>::SetTPar(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetTPar"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksOrdinatedDimParamDispT<T>::GetDPar()
{
  _TDispID _dispid(*this, OLETEXT("GetDPar"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksOrdinatedDimParamDispT<T>::SetDPar(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetDPar"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksOrdinatedDimParamDispT<T>::GetSPar()
{
  _TDispID _dispid(*this, OLETEXT("GetSPar"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksOrdinatedDimParamDispT<T>::SetSPar(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetSPar"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksOrdinatedDrawingParam
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B8A-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksOrdinatedDrawingParamDispT<T>::set_type(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksOrdinatedDrawingParamDispT<T>::get_type()
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSheetSize
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B8D-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksSheetSizeDispT<T>::set_width(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("width"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksSheetSizeDispT<T>::get_width()
{
  _TDispID _dispid(*this, OLETEXT("width"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSheetSizeDispT<T>::set_height(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("height"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksSheetSizeDispT<T>::get_height()
{
  _TDispID _dispid(*this, OLETEXT("height"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSheetSizeDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksStandartSheet
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B90-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksStandartSheetDispT<T>::set_format(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("format"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksStandartSheetDispT<T>::get_format()
{
  _TDispID _dispid(*this, OLETEXT("format"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksStandartSheetDispT<T>::set_multiply(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("multiply"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksStandartSheetDispT<T>::get_multiply()
{
  _TDispID _dispid(*this, OLETEXT("multiply"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksStandartSheetDispT<T>::set_direct(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("direct"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksStandartSheetDispT<T>::get_direct()
{
  _TDispID _dispid(*this, OLETEXT("direct"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksStandartSheetDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSheetPar
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B93-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksSheetParDispT<T>::set_layoutName(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("layoutName"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksSheetParDispT<T>::get_layoutName()
{
  _TDispID _dispid(*this, OLETEXT("layoutName"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSheetParDispT<T>::set_shtType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("shtType"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSheetParDispT<T>::get_shtType()
{
  _TDispID _dispid(*this, OLETEXT("shtType"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSheetParDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSheetParDispT<T>::GetSheetParam()
{
  _TDispID _dispid(*this, OLETEXT("GetSheetParam"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksDocumentParam
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B96-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksDocumentParamDispT<T>::set_fileName(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("fileName"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksDocumentParamDispT<T>::get_fileName()
{
  _TDispID _dispid(*this, OLETEXT("fileName"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocumentParamDispT<T>::set_comment(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("comment"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksDocumentParamDispT<T>::get_comment()
{
  _TDispID _dispid(*this, OLETEXT("comment"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocumentParamDispT<T>::set_author(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("author"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksDocumentParamDispT<T>::get_author()
{
  _TDispID _dispid(*this, OLETEXT("author"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocumentParamDispT<T>::set_type(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksDocumentParamDispT<T>::get_type()
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocumentParamDispT<T>::set_regime(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("regime"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksDocumentParamDispT<T>::get_regime()
{
  _TDispID _dispid(*this, OLETEXT("regime"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocumentParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocumentParamDispT<T>::GetLayoutParam()
{
  _TDispID _dispid(*this, OLETEXT("GetLayoutParam"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksDimensionsOptions
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B99-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksDimensionsOptionsDispT<T>::set_proLineExtension(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("proLineExtension"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksDimensionsOptionsDispT<T>::get_proLineExtension()
{
  _TDispID _dispid(*this, OLETEXT("proLineExtension"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimensionsOptionsDispT<T>::set_textDistanceFromDimLine(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("textDistanceFromDimLine"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksDimensionsOptionsDispT<T>::get_textDistanceFromDimLine()
{
  _TDispID _dispid(*this, OLETEXT("textDistanceFromDimLine"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimensionsOptionsDispT<T>::set_textDistanceFromProLine(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("textDistanceFromProLine"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksDimensionsOptionsDispT<T>::get_textDistanceFromProLine()
{
  _TDispID _dispid(*this, OLETEXT("textDistanceFromProLine"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimensionsOptionsDispT<T>::set_dimLineExtension(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("dimLineExtension"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksDimensionsOptionsDispT<T>::get_dimLineExtension()
{
  _TDispID _dispid(*this, OLETEXT("dimLineExtension"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimensionsOptionsDispT<T>::set_arrowLength(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("arrowLength"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksDimensionsOptionsDispT<T>::get_arrowLength()
{
  _TDispID _dispid(*this, OLETEXT("arrowLength"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimensionsOptionsDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksDimensionsOptionsDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimensionsOptionsDispT<T>::set_decimalsCount(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("decimalsCount"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksDimensionsOptionsDispT<T>::get_decimalsCount()
{
  _TDispID _dispid(*this, OLETEXT("decimalsCount"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimensionsOptionsDispT<T>::set_anglePrecisionLevel(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("anglePrecisionLevel"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksDimensionsOptionsDispT<T>::get_anglePrecisionLevel()
{
  _TDispID _dispid(*this, OLETEXT("anglePrecisionLevel"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDimensionsOptionsDispT<T>::set_hiddenToleranceNumber(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("hiddenToleranceNumber"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksDimensionsOptionsDispT<T>::get_hiddenToleranceNumber()
{
  _TDispID _dispid(*this, OLETEXT("hiddenToleranceNumber"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDimensionsOptionsDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSnapOptions
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B9C-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksSnapOptionsDispT<T>::set_nearestPoint(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("nearestPoint"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksSnapOptionsDispT<T>::get_nearestPoint()
{
  _TDispID _dispid(*this, OLETEXT("nearestPoint"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSnapOptionsDispT<T>::set_nearestMiddle(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("nearestMiddle"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksSnapOptionsDispT<T>::get_nearestMiddle()
{
  _TDispID _dispid(*this, OLETEXT("nearestMiddle"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSnapOptionsDispT<T>::set_intersect(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("intersect"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksSnapOptionsDispT<T>::get_intersect()
{
  _TDispID _dispid(*this, OLETEXT("intersect"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSnapOptionsDispT<T>::set_tangentToCurve(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("tangentToCurve"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksSnapOptionsDispT<T>::get_tangentToCurve()
{
  _TDispID _dispid(*this, OLETEXT("tangentToCurve"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSnapOptionsDispT<T>::set_normalToCurve(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("normalToCurve"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksSnapOptionsDispT<T>::get_normalToCurve()
{
  _TDispID _dispid(*this, OLETEXT("normalToCurve"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSnapOptionsDispT<T>::set_grid(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("grid"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksSnapOptionsDispT<T>::get_grid()
{
  _TDispID _dispid(*this, OLETEXT("grid"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSnapOptionsDispT<T>::set_xyAlign(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("xyAlign"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksSnapOptionsDispT<T>::get_xyAlign()
{
  _TDispID _dispid(*this, OLETEXT("xyAlign"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSnapOptionsDispT<T>::set_angSnap(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angSnap"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksSnapOptionsDispT<T>::get_angSnap()
{
  _TDispID _dispid(*this, OLETEXT("angSnap"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSnapOptionsDispT<T>::set_pointOnCurve(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("pointOnCurve"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksSnapOptionsDispT<T>::get_pointOnCurve()
{
  _TDispID _dispid(*this, OLETEXT("pointOnCurve"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSnapOptionsDispT<T>::set_commonOpt(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("commonOpt"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksSnapOptionsDispT<T>::get_commonOpt()
{
  _TDispID _dispid(*this, OLETEXT("commonOpt"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSnapOptionsDispT<T>::set_angleStep(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angleStep"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksSnapOptionsDispT<T>::get_angleStep()
{
  _TDispID _dispid(*this, OLETEXT("angleStep"), DISPID(11));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSnapOptionsDispT<T>::set_localSnap(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("localSnap"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSnapOptionsDispT<T>::get_localSnap()
{
  _TDispID _dispid(*this, OLETEXT("localSnap"), DISPID(12));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSnapOptionsDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(13));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSnapOptionsDispT<T>::GetCommonOptValue(long val)
{
  _TDispID _dispid(*this, OLETEXT("GetCommonOptValue"), DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSnapOptionsDispT<T>::SetCommonOptValue(long val, TOLEBOOL state)
{
  _TDispID _dispid(*this, OLETEXT("SetCommonOptValue"), DISPID(15));
  TAutoArgs<2> _args;
  _args[1] = val /*[VT_I4:0]*/;
  _args[2] = state /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksLibraryStyleParam
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5B9F-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksLibraryStyleParamDispT<T>::set_styleName(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("styleName"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksLibraryStyleParamDispT<T>::get_styleName()
{
  _TDispID _dispid(*this, OLETEXT("styleName"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLibraryStyleParamDispT<T>::set_styleId(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("styleId"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksLibraryStyleParamDispT<T>::get_styleId()
{
  _TDispID _dispid(*this, OLETEXT("styleId"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksLibraryStyleParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksStampNotify
// Flags:     (4096) Dispatchable
// GUID:      {404E7D5A-A13F-4CFF-8214-FEA7012110CB}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksStampNotifyDispT<T>::BeginEditStamp()
{
  _TDispID _dispid(/* BeginEditStamp */ DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksStampNotifyDispT<T>::EndEditStamp(TOLEBOOL editResult)
{
  _TDispID _dispid(/* EndEditStamp */ DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = editResult /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksStampNotifyDispT<T>::StampCellDblClick(long number)
{
  _TDispID _dispid(/* StampCellDblClick */ DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = number /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksStampNotifyDispT<T>::StampCellBeginEdit(long number)
{
  _TDispID _dispid(/* StampCellBeginEdit */ DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = number /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksStampNotifyDispT<T>::StampBeginClearCells(TVariant cells)
{
  _TDispID _dispid(/* StampBeginClearCells */ DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = cells /*[VT_VARIANT:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksStamp
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5BA5-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksStampDispT<T>::set_reference(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("reference"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksStampDispT<T>::get_reference()
{
  _TDispID _dispid(*this, OLETEXT("reference"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksStampDispT<T>::ksOpenStamp()
{
  _TDispID _dispid(*this, OLETEXT("ksOpenStamp"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksStampDispT<T>::ksCloseStamp()
{
  _TDispID _dispid(*this, OLETEXT("ksCloseStamp"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksStampDispT<T>::ksClearStamp(long numb)
{
  _TDispID _dispid(*this, OLETEXT("ksClearStamp"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = numb /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksStampDispT<T>::ksGetStampColumnText(long* numb)
{
  _TDispID _dispid(*this, OLETEXT("ksGetStampColumnText"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = numb /*[VT_I4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksStampDispT<T>::ksSetStampColumnText(long numb, LPDISPATCH textArr)
{
  _TDispID _dispid(*this, OLETEXT("ksSetStampColumnText"), DISPID(6));
  TAutoArgs<2> _args;
  _args[1] = numb /*[VT_I4:0]*/;
  _args[2] = textArr /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksStampDispT<T>::ksColumnNumber(long numb)
{
  _TDispID _dispid(*this, OLETEXT("ksColumnNumber"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = numb /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksStampDispT<T>::ksTextLine(LPDISPATCH textItem)
{
  _TDispID _dispid(*this, OLETEXT("ksTextLine"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = textItem /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksStampDispT<T>::ksSetTextLineAlign(short align)
{
  _TDispID _dispid(*this, OLETEXT("ksSetTextLineAlign"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = align /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksStampDispT<T>::get_SheetNumb()
{
  _TDispID _dispid(*this, OLETEXT("SheetNumb"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSheetOptions
// Flags:     (4096) Dispatchable
// GUID:      {FBCC5BA8-996C-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksSheetOptionsDispT<T>::set_shtType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("shtType"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSheetOptionsDispT<T>::get_shtType()
{
  _TDispID _dispid(*this, OLETEXT("shtType"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSheetOptionsDispT<T>::set_layoutName(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("layoutName"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksSheetOptionsDispT<T>::get_layoutName()
{
  _TDispID _dispid(*this, OLETEXT("layoutName"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSheetOptionsDispT<T>::set_sheetType(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("sheetType"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksSheetOptionsDispT<T>::get_sheetType()
{
  _TDispID _dispid(*this, OLETEXT("sheetType"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSheetOptionsDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSheetOptionsDispT<T>::GetSheetParam(TOLEBOOL type)
{
  _TDispID _dispid(*this, OLETEXT("GetSheetParam"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = type /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCurvePatternEx
// Flags:     (4096) Dispatchable
// GUID:      {910EC549-958D-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksCurvePatternExDispT<T>::set_visibleSeg(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("visibleSeg"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCurvePatternExDispT<T>::get_visibleSeg()
{
  _TDispID _dispid(*this, OLETEXT("visibleSeg"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCurvePatternExDispT<T>::set_invisibleSeg(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("invisibleSeg"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCurvePatternExDispT<T>::get_invisibleSeg()
{
  _TDispID _dispid(*this, OLETEXT("invisibleSeg"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCurvePatternExDispT<T>::set_dx(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("dx"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCurvePatternExDispT<T>::get_dx()
{
  _TDispID _dispid(*this, OLETEXT("dx"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCurvePatternExDispT<T>::set_dy(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("dy"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCurvePatternExDispT<T>::get_dy()
{
  _TDispID _dispid(*this, OLETEXT("dy"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCurvePatternExDispT<T>::set_pictureType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("pictureType"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksCurvePatternExDispT<T>::get_pictureType()
{
  _TDispID _dispid(*this, OLETEXT("pictureType"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCurvePatternExDispT<T>::set_frwName(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("frwName"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksCurvePatternExDispT<T>::get_frwName()
{
  _TDispID _dispid(*this, OLETEXT("frwName"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurvePatternExDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCurvePatternExDispT<T>::GetCurvePicture()
{
  _TDispID _dispid(*this, OLETEXT("GetCurvePicture"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurvePatternExDispT<T>::SetCurvePicture(LPDISPATCH picture)
{
  _TDispID _dispid(*this, OLETEXT("SetCurvePicture"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = picture /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCurveStyleParam
// Flags:     (4096) Dispatchable
// GUID:      {910EC54C-958D-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksCurveStyleParamDispT<T>::set_name(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksCurveStyleParamDispT<T>::get_name()
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCurveStyleParamDispT<T>::set_color(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("color"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksCurveStyleParamDispT<T>::get_color()
{
  _TDispID _dispid(*this, OLETEXT("color"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCurveStyleParamDispT<T>::set_paperWidth(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("paperWidth"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCurveStyleParamDispT<T>::get_paperWidth()
{
  _TDispID _dispid(*this, OLETEXT("paperWidth"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCurveStyleParamDispT<T>::set_screenWidth(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("screenWidth"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksCurveStyleParamDispT<T>::get_screenWidth()
{
  _TDispID _dispid(*this, OLETEXT("screenWidth"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCurveStyleParamDispT<T>::set_curveType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("curveType"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksCurveStyleParamDispT<T>::get_curveType()
{
  _TDispID _dispid(*this, OLETEXT("curveType"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCurveStyleParamDispT<T>::set_even(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("even"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksCurveStyleParamDispT<T>::get_even()
{
  _TDispID _dispid(*this, OLETEXT("even"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCurveStyleParamDispT<T>::set_widthPen(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("widthPen"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksCurveStyleParamDispT<T>::get_widthPen()
{
  _TDispID _dispid(*this, OLETEXT("widthPen"), DISPID(12));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCurveStyleParamDispT<T>::GetPPattern(long type)
{
  _TDispID _dispid(*this, OLETEXT("GetPPattern"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = type /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurveStyleParamDispT<T>::SetPPattern(LPDISPATCH pattern)
{
  _TDispID _dispid(*this, OLETEXT("SetPPattern"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = pattern /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurveStyleParamDispT<T>::SetPropertyCurve(long val, TOLEBOOL state)
{
  _TDispID _dispid(*this, OLETEXT("SetPropertyCurve"), DISPID(9));
  TAutoArgs<2> _args;
  _args[1] = val /*[VT_I4:0]*/;
  _args[2] = state /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurveStyleParamDispT<T>::GetPropertyCurve(long val)
{
  _TDispID _dispid(*this, OLETEXT("GetPropertyCurve"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurveStyleParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksTextStyleParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E24-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksTextStyleParamDispT<T>::set_name(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksTextStyleParamDispT<T>::get_name()
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextStyleParamDispT<T>::set_height(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("height"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksTextStyleParamDispT<T>::get_height()
{
  _TDispID _dispid(*this, OLETEXT("height"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextStyleParamDispT<T>::set_ksu(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ksu"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksTextStyleParamDispT<T>::get_ksu()
{
  _TDispID _dispid(*this, OLETEXT("ksu"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextStyleParamDispT<T>::set_step(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("step"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksTextStyleParamDispT<T>::get_step()
{
  _TDispID _dispid(*this, OLETEXT("step"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextStyleParamDispT<T>::set_fontName(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("fontName"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksTextStyleParamDispT<T>::get_fontName()
{
  _TDispID _dispid(*this, OLETEXT("fontName"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextStyleParamDispT<T>::set_color(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("color"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksTextStyleParamDispT<T>::get_color()
{
  _TDispID _dispid(*this, OLETEXT("color"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextStyleParamDispT<T>::set_align(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("align"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksTextStyleParamDispT<T>::get_align()
{
  _TDispID _dispid(*this, OLETEXT("align"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextStyleParamDispT<T>::set_bold(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("bold"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksTextStyleParamDispT<T>::get_bold()
{
  _TDispID _dispid(*this, OLETEXT("bold"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextStyleParamDispT<T>::set_italic(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("italic"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksTextStyleParamDispT<T>::get_italic()
{
  _TDispID _dispid(*this, OLETEXT("italic"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextStyleParamDispT<T>::set_underline(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("underline"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksTextStyleParamDispT<T>::get_underline()
{
  _TDispID _dispid(*this, OLETEXT("underline"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextStyleParamDispT<T>::set_posKS(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("posKS"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksTextStyleParamDispT<T>::get_posKS()
{
  _TDispID _dispid(*this, OLETEXT("posKS"), DISPID(11));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextStyleParamDispT<T>::set_stepParPre(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("stepParPre"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksTextStyleParamDispT<T>::get_stepParPre()
{
  _TDispID _dispid(*this, OLETEXT("stepParPre"), DISPID(12));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextStyleParamDispT<T>::set_stepParPst(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("stepParPst"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksTextStyleParamDispT<T>::get_stepParPst()
{
  _TDispID _dispid(*this, OLETEXT("stepParPst"), DISPID(13));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextStyleParamDispT<T>::set_leftEdge(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("leftEdge"), DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksTextStyleParamDispT<T>::get_leftEdge()
{
  _TDispID _dispid(*this, OLETEXT("leftEdge"), DISPID(14));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextStyleParamDispT<T>::set_rightEdge(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("rightEdge"), DISPID(15));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksTextStyleParamDispT<T>::get_rightEdge()
{
  _TDispID _dispid(*this, OLETEXT("rightEdge"), DISPID(15));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksTextStyleParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(16));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksHatchLineParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E27-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksHatchLineParamDispT<T>::set_x(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksHatchLineParamDispT<T>::get_x()
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksHatchLineParamDispT<T>::set_y(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksHatchLineParamDispT<T>::get_y()
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksHatchLineParamDispT<T>::set_dx(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("dx"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksHatchLineParamDispT<T>::get_dx()
{
  _TDispID _dispid(*this, OLETEXT("dx"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksHatchLineParamDispT<T>::set_dy(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("dy"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksHatchLineParamDispT<T>::get_dy()
{
  _TDispID _dispid(*this, OLETEXT("dy"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksHatchLineParamDispT<T>::set_ang(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksHatchLineParamDispT<T>::get_ang()
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksHatchLineParamDispT<T>::set_typeCurvStyle(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("typeCurvStyle"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksHatchLineParamDispT<T>::get_typeCurvStyle()
{
  _TDispID _dispid(*this, OLETEXT("typeCurvStyle"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksHatchLineParamDispT<T>::set_style(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksHatchLineParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksHatchLineParamDispT<T>::GetCurPar()
{
  _TDispID _dispid(*this, OLETEXT("GetCurPar"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksHatchLineParamDispT<T>::SetCurPar(LPDISPATCH curPar)
{
  _TDispID _dispid(*this, OLETEXT("SetCurPar"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = curPar /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksHatchLineParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksHatchStyleParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E2A-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksHatchStyleParamDispT<T>::set_name(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksHatchStyleParamDispT<T>::get_name()
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksHatchStyleParamDispT<T>::set_step(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("step"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksHatchStyleParamDispT<T>::get_step()
{
  _TDispID _dispid(*this, OLETEXT("step"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksHatchStyleParamDispT<T>::set_ang(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksHatchStyleParamDispT<T>::get_ang()
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksHatchStyleParamDispT<T>::set_width(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("width"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksHatchStyleParamDispT<T>::get_width()
{
  _TDispID _dispid(*this, OLETEXT("width"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksHatchStyleParamDispT<T>::set_color(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("color"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksHatchStyleParamDispT<T>::get_color()
{
  _TDispID _dispid(*this, OLETEXT("color"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksHatchStyleParamDispT<T>::set_mayChangeAngle(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("mayChangeAngle"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksHatchStyleParamDispT<T>::get_mayChangeAngle()
{
  _TDispID _dispid(*this, OLETEXT("mayChangeAngle"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksHatchStyleParamDispT<T>::set_mayChangeWidth(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("mayChangeWidth"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksHatchStyleParamDispT<T>::get_mayChangeWidth()
{
  _TDispID _dispid(*this, OLETEXT("mayChangeWidth"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksHatchStyleParamDispT<T>::set_mayChangeSpace(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("mayChangeSpace"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksHatchStyleParamDispT<T>::get_mayChangeSpace()
{
  _TDispID _dispid(*this, OLETEXT("mayChangeSpace"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksHatchStyleParamDispT<T>::set_isScalable(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("isScalable"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksHatchStyleParamDispT<T>::get_isScalable()
{
  _TDispID _dispid(*this, OLETEXT("isScalable"), DISPID(11));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksHatchStyleParamDispT<T>::GetRefPoint()
{
  _TDispID _dispid(*this, OLETEXT("GetRefPoint"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksHatchStyleParamDispT<T>::SetRefPoint(LPDISPATCH refPoint)
{
  _TDispID _dispid(*this, OLETEXT("SetRefPoint"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = refPoint /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksHatchStyleParamDispT<T>::GetArrLineParam()
{
  _TDispID _dispid(*this, OLETEXT("GetArrLineParam"), DISPID(12));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksHatchStyleParamDispT<T>::SetArrLineParam(LPDISPATCH arrLineParam)
{
  _TDispID _dispid(*this, OLETEXT("SetArrLineParam"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = arrLineParam /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksHatchStyleParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(14));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksRectParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E2D-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> LPDISPATCH __fastcall
ksRectParamDispT<T>::GetpBot()
{
  _TDispID _dispid(*this, OLETEXT("GetpBot"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRectParamDispT<T>::SetpBot(LPDISPATCH pBot)
{
  _TDispID _dispid(*this, OLETEXT("SetpBot"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = pBot /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksRectParamDispT<T>::GetpTop()
{
  _TDispID _dispid(*this, OLETEXT("GetpTop"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRectParamDispT<T>::SetpTop(LPDISPATCH pTop)
{
  _TDispID _dispid(*this, OLETEXT("SetpTop"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = pTop /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksShelfPar
// Flags:     (4096) Dispatchable
// GUID:      {3F715E30-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksShelfParDispT<T>::set_psh(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("psh"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksShelfParDispT<T>::get_psh()
{
  _TDispID _dispid(*this, OLETEXT("psh"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksShelfParDispT<T>::set_ang(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksShelfParDispT<T>::get_ang()
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksShelfParDispT<T>::set_length(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("length"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksShelfParDispT<T>::get_length()
{
  _TDispID _dispid(*this, OLETEXT("length"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksShelfParDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksRoughPar
// Flags:     (4096) Dispatchable
// GUID:      {3F715E33-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksRoughParDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksRoughParDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRoughParDispT<T>::set_type(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksRoughParDispT<T>::get_type()
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRoughParDispT<T>::set_around(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("around"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksRoughParDispT<T>::get_around()
{
  _TDispID _dispid(*this, OLETEXT("around"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRoughParDispT<T>::set_x(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRoughParDispT<T>::get_x()
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRoughParDispT<T>::set_y(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRoughParDispT<T>::get_y()
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRoughParDispT<T>::set_ang(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRoughParDispT<T>::get_ang()
{
  _TDispID _dispid(*this, OLETEXT("ang"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRoughParDispT<T>::set_cText0(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("cText0"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksRoughParDispT<T>::get_cText0()
{
  _TDispID _dispid(*this, OLETEXT("cText0"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRoughParDispT<T>::set_cText1(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("cText1"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksRoughParDispT<T>::get_cText1()
{
  _TDispID _dispid(*this, OLETEXT("cText1"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRoughParDispT<T>::set_cText2(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("cText2"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksRoughParDispT<T>::get_cText2()
{
  _TDispID _dispid(*this, OLETEXT("cText2"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRoughParDispT<T>::set_cText3(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("cText3"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksRoughParDispT<T>::get_cText3()
{
  _TDispID _dispid(*this, OLETEXT("cText3"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksRoughParDispT<T>::GetpText()
{
  _TDispID _dispid(*this, OLETEXT("GetpText"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRoughParDispT<T>::SetpText(LPDISPATCH pText)
{
  _TDispID _dispid(*this, OLETEXT("SetpText"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = pText /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRoughParDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(13));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRoughParDispT<T>::InitEx(long style)
{
  _TDispID _dispid(*this, OLETEXT("InitEx"), DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = style /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksRoughParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E36-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> LPDISPATCH __fastcall
ksRoughParamDispT<T>::GetrPar()
{
  _TDispID _dispid(*this, OLETEXT("GetrPar"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRoughParamDispT<T>::SetrPar(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("SetrPar"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksRoughParamDispT<T>::GetshPar()
{
  _TDispID _dispid(*this, OLETEXT("GetshPar"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRoughParamDispT<T>::SetshPar(LPDISPATCH shPar)
{
  _TDispID _dispid(*this, OLETEXT("SetshPar"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = shPar /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksChar255
// Flags:     (4096) Dispatchable
// GUID:      {3F715E39-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksChar255DispT<T>::set_str(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("str"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksChar255DispT<T>::get_str()
{
  _TDispID _dispid(*this, OLETEXT("str"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksChar255DispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksLeaderParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E40-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksLeaderParamDispT<T>::set_x(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksLeaderParamDispT<T>::get_x()
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLeaderParamDispT<T>::set_y(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksLeaderParamDispT<T>::get_y()
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLeaderParamDispT<T>::set_arrowType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("arrowType"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksLeaderParamDispT<T>::get_arrowType()
{
  _TDispID _dispid(*this, OLETEXT("arrowType"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLeaderParamDispT<T>::set_dirX(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("dirX"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksLeaderParamDispT<T>::get_dirX()
{
  _TDispID _dispid(*this, OLETEXT("dirX"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLeaderParamDispT<T>::set_signType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("signType"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksLeaderParamDispT<T>::get_signType()
{
  _TDispID _dispid(*this, OLETEXT("signType"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLeaderParamDispT<T>::set_around(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("around"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksLeaderParamDispT<T>::get_around()
{
  _TDispID _dispid(*this, OLETEXT("around"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLeaderParamDispT<T>::set_cText0(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("cText0"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksLeaderParamDispT<T>::get_cText0()
{
  _TDispID _dispid(*this, OLETEXT("cText0"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLeaderParamDispT<T>::set_cText1(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("cText1"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksLeaderParamDispT<T>::get_cText1()
{
  _TDispID _dispid(*this, OLETEXT("cText1"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLeaderParamDispT<T>::set_cText2(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("cText2"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksLeaderParamDispT<T>::get_cText2()
{
  _TDispID _dispid(*this, OLETEXT("cText2"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLeaderParamDispT<T>::set_cText3(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("cText3"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksLeaderParamDispT<T>::get_cText3()
{
  _TDispID _dispid(*this, OLETEXT("cText3"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksLeaderParamDispT<T>::GetpTextline()
{
  _TDispID _dispid(*this, OLETEXT("GetpTextline"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksLeaderParamDispT<T>::SetpTextline(LPDISPATCH pTextLine)
{
  _TDispID _dispid(*this, OLETEXT("SetpTextline"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = pTextLine /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksLeaderParamDispT<T>::GetpPolyline()
{
  _TDispID _dispid(*this, OLETEXT("GetpPolyline"), DISPID(13));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksLeaderParamDispT<T>::SetpPolyline(LPDISPATCH pPolyline)
{
  _TDispID _dispid(*this, OLETEXT("SetpPolyline"), DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = pPolyline /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksLeaderParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(15));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksPosLeaderParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E43-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksPosLeaderParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksPosLeaderParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksPosLeaderParamDispT<T>::set_x(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksPosLeaderParamDispT<T>::get_x()
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksPosLeaderParamDispT<T>::set_y(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksPosLeaderParamDispT<T>::get_y()
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksPosLeaderParamDispT<T>::set_arrowType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("arrowType"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksPosLeaderParamDispT<T>::get_arrowType()
{
  _TDispID _dispid(*this, OLETEXT("arrowType"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksPosLeaderParamDispT<T>::set_dirX(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("dirX"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksPosLeaderParamDispT<T>::get_dirX()
{
  _TDispID _dispid(*this, OLETEXT("dirX"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksPosLeaderParamDispT<T>::set_dirY(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("dirY"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksPosLeaderParamDispT<T>::get_dirY()
{
  _TDispID _dispid(*this, OLETEXT("dirY"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPosLeaderParamDispT<T>::GetpTextline()
{
  _TDispID _dispid(*this, OLETEXT("GetpTextline"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPosLeaderParamDispT<T>::SetpTextline(LPDISPATCH textline)
{
  _TDispID _dispid(*this, OLETEXT("SetpTextline"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = textline /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPosLeaderParamDispT<T>::GetpPolyline()
{
  _TDispID _dispid(*this, OLETEXT("GetpPolyline"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPosLeaderParamDispT<T>::SetpPolyline(LPDISPATCH polyline)
{
  _TDispID _dispid(*this, OLETEXT("SetpPolyline"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = polyline /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPosLeaderParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksBrandLeaderParam
// Flags:     (4096) Dispatchable
// GUID:      {3F715E46-97D9-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksBrandLeaderParamDispT<T>::set_dirX(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("dirX"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksBrandLeaderParamDispT<T>::get_dirX()
{
  _TDispID _dispid(*this, OLETEXT("dirX"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBrandLeaderParamDispT<T>::set_x(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksBrandLeaderParamDispT<T>::get_x()
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBrandLeaderParamDispT<T>::set_y(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksBrandLeaderParamDispT<T>::get_y()
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBrandLeaderParamDispT<T>::set_arrowType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("arrowType"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksBrandLeaderParamDispT<T>::get_arrowType()
{
  _TDispID _dispid(*this, OLETEXT("arrowType"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBrandLeaderParamDispT<T>::set_style1(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style1"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksBrandLeaderParamDispT<T>::get_style1()
{
  _TDispID _dispid(*this, OLETEXT("style1"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBrandLeaderParamDispT<T>::set_style2(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style2"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksBrandLeaderParamDispT<T>::get_style2()
{
  _TDispID _dispid(*this, OLETEXT("style2"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBrandLeaderParamDispT<T>::set_cText0(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("cText0"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksBrandLeaderParamDispT<T>::get_cText0()
{
  _TDispID _dispid(*this, OLETEXT("cText0"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBrandLeaderParamDispT<T>::set_cText1(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("cText1"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksBrandLeaderParamDispT<T>::get_cText1()
{
  _TDispID _dispid(*this, OLETEXT("cText1"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBrandLeaderParamDispT<T>::set_cText2(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("cText2"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksBrandLeaderParamDispT<T>::get_cText2()
{
  _TDispID _dispid(*this, OLETEXT("cText2"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBrandLeaderParamDispT<T>::GetpTextline()
{
  _TDispID _dispid(*this, OLETEXT("GetpTextline"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBrandLeaderParamDispT<T>::SetpTextline(LPDISPATCH pTextLine)
{
  _TDispID _dispid(*this, OLETEXT("SetpTextline"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = pTextLine /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBrandLeaderParamDispT<T>::GetpPolyline()
{
  _TDispID _dispid(*this, OLETEXT("GetpPolyline"), DISPID(12));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBrandLeaderParamDispT<T>::SetpPolyline(LPDISPATCH pPolyline)
{
  _TDispID _dispid(*this, OLETEXT("SetpPolyline"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = pPolyline /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBrandLeaderParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(14));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksMarkerLeaderParam
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E341-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksMarkerLeaderParamDispT<T>::set_x(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksMarkerLeaderParamDispT<T>::get_x()
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMarkerLeaderParamDispT<T>::set_y(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksMarkerLeaderParamDispT<T>::get_y()
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMarkerLeaderParamDispT<T>::set_arrowType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("arrowType"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksMarkerLeaderParamDispT<T>::get_arrowType()
{
  _TDispID _dispid(*this, OLETEXT("arrowType"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMarkerLeaderParamDispT<T>::set_style1(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style1"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksMarkerLeaderParamDispT<T>::get_style1()
{
  _TDispID _dispid(*this, OLETEXT("style1"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMarkerLeaderParamDispT<T>::set_style2(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style2"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksMarkerLeaderParamDispT<T>::get_style2()
{
  _TDispID _dispid(*this, OLETEXT("style2"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMarkerLeaderParamDispT<T>::set_cText0(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("cText0"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksMarkerLeaderParamDispT<T>::get_cText0()
{
  _TDispID _dispid(*this, OLETEXT("cText0"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMarkerLeaderParamDispT<T>::set_cText1(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("cText1"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksMarkerLeaderParamDispT<T>::get_cText1()
{
  _TDispID _dispid(*this, OLETEXT("cText1"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMarkerLeaderParamDispT<T>::set_cText2(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("cText2"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksMarkerLeaderParamDispT<T>::get_cText2()
{
  _TDispID _dispid(*this, OLETEXT("cText2"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMarkerLeaderParamDispT<T>::GetpTextline()
{
  _TDispID _dispid(*this, OLETEXT("GetpTextline"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMarkerLeaderParamDispT<T>::SetpTextline(LPDISPATCH pTextLine)
{
  _TDispID _dispid(*this, OLETEXT("SetpTextline"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = pTextLine /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMarkerLeaderParamDispT<T>::GetpPolyline()
{
  _TDispID _dispid(*this, OLETEXT("GetpPolyline"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMarkerLeaderParamDispT<T>::SetpPolyline(LPDISPATCH pPolyline)
{
  _TDispID _dispid(*this, OLETEXT("SetpPolyline"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = pPolyline /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMarkerLeaderParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(13));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksType1
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E344-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksType1DispT<T>::set_xBase(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("xBase"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksType1DispT<T>::get_xBase()
{
  _TDispID _dispid(*this, OLETEXT("xBase"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksType1DispT<T>::set_yBase(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("yBase"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksType1DispT<T>::get_yBase()
{
  _TDispID _dispid(*this, OLETEXT("yBase"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksType1DispT<T>::set_scale_(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("scale_"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksType1DispT<T>::get_scale_()
{
  _TDispID _dispid(*this, OLETEXT("scale_"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksType1DispT<T>::set_angle(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksType1DispT<T>::get_angle()
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksType1DispT<T>::set_gr(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("gr"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksType1DispT<T>::get_gr()
{
  _TDispID _dispid(*this, OLETEXT("gr"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksType1DispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksType2
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E347-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksType2DispT<T>::set_xBase(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("xBase"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksType2DispT<T>::get_xBase()
{
  _TDispID _dispid(*this, OLETEXT("xBase"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksType2DispT<T>::set_yBase(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("yBase"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksType2DispT<T>::get_yBase()
{
  _TDispID _dispid(*this, OLETEXT("yBase"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksType2DispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksType3
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E34A-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksType3DispT<T>::set_xBase(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("xBase"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksType3DispT<T>::get_xBase()
{
  _TDispID _dispid(*this, OLETEXT("xBase"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksType3DispT<T>::set_yBase(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("yBase"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksType3DispT<T>::get_yBase()
{
  _TDispID _dispid(*this, OLETEXT("yBase"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksType3DispT<T>::set_angle(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksType3DispT<T>::get_angle()
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksType3DispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksType5
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E34D-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksType5DispT<T>::set_xBase(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("xBase"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksType5DispT<T>::get_xBase()
{
  _TDispID _dispid(*this, OLETEXT("xBase"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksType5DispT<T>::set_yBase(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("yBase"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksType5DispT<T>::get_yBase()
{
  _TDispID _dispid(*this, OLETEXT("yBase"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksType5DispT<T>::set_angle(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksType5DispT<T>::get_angle()
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksType5DispT<T>::set_horizon(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("horizon"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksType5DispT<T>::get_horizon()
{
  _TDispID _dispid(*this, OLETEXT("horizon"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksType5DispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksType6
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E350-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksType6DispT<T>::set_gr(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("gr"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksType6DispT<T>::get_gr()
{
  _TDispID _dispid(*this, OLETEXT("gr"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksType6DispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksPhantom
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E353-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksPhantomDispT<T>::set_phantom(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("phantom"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksPhantomDispT<T>::get_phantom()
{
  _TDispID _dispid(*this, OLETEXT("phantom"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPhantomDispT<T>::GetPhantomParam()
{
  _TDispID _dispid(*this, OLETEXT("GetPhantomParam"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPhantomDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksRequestInfo
// Flags:     (4096) Dispatchable
// GUID:      {9AF8E356-98A0-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksRequestInfoDispT<T>::set_prompt(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("prompt"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksRequestInfoDispT<T>::get_prompt()
{
  _TDispID _dispid(*this, OLETEXT("prompt"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRequestInfoDispT<T>::set_title(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("title"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksRequestInfoDispT<T>::get_title()
{
  _TDispID _dispid(*this, OLETEXT("title"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRequestInfoDispT<T>::set_commandsString(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("commandsString"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksRequestInfoDispT<T>::get_commandsString()
{
  _TDispID _dispid(*this, OLETEXT("commandsString"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRequestInfoDispT<T>::set_cursor(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("cursor"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksRequestInfoDispT<T>::get_cursor()
{
  _TDispID _dispid(*this, OLETEXT("cursor"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRequestInfoDispT<T>::set_dynamic(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("dynamic"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksRequestInfoDispT<T>::get_dynamic()
{
  _TDispID _dispid(*this, OLETEXT("dynamic"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRequestInfoDispT<T>::set_commInstance(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("commInstance"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksRequestInfoDispT<T>::get_commInstance()
{
  _TDispID _dispid(*this, OLETEXT("commInstance"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRequestInfoDispT<T>::set_menuId(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("menuId"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksRequestInfoDispT<T>::get_menuId()
{
  _TDispID _dispid(*this, OLETEXT("menuId"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRequestInfoDispT<T>::set_titleId(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("titleId"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksRequestInfoDispT<T>::get_titleId()
{
  _TDispID _dispid(*this, OLETEXT("titleId"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRequestInfoDispT<T>::set_promptId(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("promptId"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksRequestInfoDispT<T>::get_promptId()
{
  _TDispID _dispid(*this, OLETEXT("promptId"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRequestInfoDispT<T>::set_cursorId(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("cursorId"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksRequestInfoDispT<T>::get_cursorId()
{
  _TDispID _dispid(*this, OLETEXT("cursorId"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksRequestInfoDispT<T>::GetCallBackC()
{
  _TDispID _dispid(*this, OLETEXT("GetCallBackC"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRequestInfoDispT<T>::SetCallBackC(BSTR methodName, long hInst, LPDISPATCH dispatchOCX)
{
  _TDispID _dispid(*this, OLETEXT("SetCallBackC"), DISPID(12));
  TAutoArgs<3> _args;
  _args[1] = methodName /*[VT_BSTR:0]*/;
  _args[2] = hInst /*[VT_I4:0]*/;
  _args[3] = dispatchOCX /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksRequestInfoDispT<T>::GetCallBackP()
{
  _TDispID _dispid(*this, OLETEXT("GetCallBackP"), DISPID(13));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRequestInfoDispT<T>::SetCallBackP(BSTR methodName, long hInst, LPDISPATCH dispatchOCX)
{
  _TDispID _dispid(*this, OLETEXT("SetCallBackP"), DISPID(14));
  TAutoArgs<3> _args;
  _args[1] = methodName /*[VT_BSTR:0]*/;
  _args[2] = hInst /*[VT_I4:0]*/;
  _args[3] = dispatchOCX /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksRequestInfoDispT<T>::GetCallBackCm()
{
  _TDispID _dispid(*this, OLETEXT("GetCallBackCm"), DISPID(15));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRequestInfoDispT<T>::SetCallBackCm(BSTR methodName, long hInst, LPDISPATCH dispatchOCX)
{
  _TDispID _dispid(*this, OLETEXT("SetCallBackCm"), DISPID(16));
  TAutoArgs<3> _args;
  _args[1] = methodName /*[VT_BSTR:0]*/;
  _args[2] = hInst /*[VT_I4:0]*/;
  _args[3] = dispatchOCX /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRequestInfoDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(17));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksViewPointerParam
// Flags:     (4096) Dispatchable
// GUID:      {CD1C0144-98DC-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksViewPointerParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksViewPointerParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksViewPointerParamDispT<T>::set_x1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x1"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksViewPointerParamDispT<T>::get_x1()
{
  _TDispID _dispid(*this, OLETEXT("x1"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksViewPointerParamDispT<T>::set_y1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y1"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksViewPointerParamDispT<T>::get_y1()
{
  _TDispID _dispid(*this, OLETEXT("y1"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksViewPointerParamDispT<T>::set_x2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x2"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksViewPointerParamDispT<T>::get_x2()
{
  _TDispID _dispid(*this, OLETEXT("x2"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksViewPointerParamDispT<T>::set_y2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y2"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksViewPointerParamDispT<T>::get_y2()
{
  _TDispID _dispid(*this, OLETEXT("y2"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksViewPointerParamDispT<T>::set_xt(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("xt"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksViewPointerParamDispT<T>::get_xt()
{
  _TDispID _dispid(*this, OLETEXT("xt"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksViewPointerParamDispT<T>::set_yt(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("yt"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksViewPointerParamDispT<T>::get_yt()
{
  _TDispID _dispid(*this, OLETEXT("yt"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksViewPointerParamDispT<T>::set_type(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksViewPointerParamDispT<T>::get_type()
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksViewPointerParamDispT<T>::set_str(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("str"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksViewPointerParamDispT<T>::get_str()
{
  _TDispID _dispid(*this, OLETEXT("str"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksViewPointerParamDispT<T>::GetpTextline()
{
  _TDispID _dispid(*this, OLETEXT("GetpTextline"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksViewPointerParamDispT<T>::SetpTextline(LPDISPATCH pTextLine)
{
  _TDispID _dispid(*this, OLETEXT("SetpTextline"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = pTextLine /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksViewPointerParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(12));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCutLineParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE81-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksCutLineParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksCutLineParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCutLineParamDispT<T>::set_right(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("right"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksCutLineParamDispT<T>::get_right()
{
  _TDispID _dispid(*this, OLETEXT("right"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCutLineParamDispT<T>::set_x1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x1"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCutLineParamDispT<T>::get_x1()
{
  _TDispID _dispid(*this, OLETEXT("x1"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCutLineParamDispT<T>::set_y1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y1"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCutLineParamDispT<T>::get_y1()
{
  _TDispID _dispid(*this, OLETEXT("y1"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCutLineParamDispT<T>::set_x2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x2"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCutLineParamDispT<T>::get_x2()
{
  _TDispID _dispid(*this, OLETEXT("x2"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCutLineParamDispT<T>::set_y2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y2"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCutLineParamDispT<T>::get_y2()
{
  _TDispID _dispid(*this, OLETEXT("y2"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCutLineParamDispT<T>::set_type(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksCutLineParamDispT<T>::get_type()
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCutLineParamDispT<T>::set_str(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("str"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksCutLineParamDispT<T>::get_str()
{
  _TDispID _dispid(*this, OLETEXT("str"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutLineParamDispT<T>::GetpTextline()
{
  _TDispID _dispid(*this, OLETEXT("GetpTextline"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutLineParamDispT<T>::SetpTextline(LPDISPATCH pTextLine)
{
  _TDispID _dispid(*this, OLETEXT("SetpTextline"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = pTextLine /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutLineParamDispT<T>::GetpMathPoint()
{
  _TDispID _dispid(*this, OLETEXT("GetpMathPoint"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutLineParamDispT<T>::SetpMathPoint(LPDISPATCH pMathPoint)
{
  _TDispID _dispid(*this, OLETEXT("SetpMathPoint"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = pMathPoint /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutLineParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(13));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksToleranceBranch
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE84-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksToleranceBranchDispT<T>::set_arrowType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("arrowType"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksToleranceBranchDispT<T>::get_arrowType()
{
  _TDispID _dispid(*this, OLETEXT("arrowType"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksToleranceBranchDispT<T>::set_tCorner(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("tCorner"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksToleranceBranchDispT<T>::get_tCorner()
{
  _TDispID _dispid(*this, OLETEXT("tCorner"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksToleranceBranchDispT<T>::GetpMathPoint()
{
  _TDispID _dispid(*this, OLETEXT("GetpMathPoint"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksToleranceBranchDispT<T>::SetpMathPoint(LPDISPATCH pMathPoint)
{
  _TDispID _dispid(*this, OLETEXT("SetpMathPoint"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = pMathPoint /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksToleranceBranchDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksToleranceParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE87-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksToleranceParamDispT<T>::set_tBase(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("tBase"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksToleranceParamDispT<T>::get_tBase()
{
  _TDispID _dispid(*this, OLETEXT("tBase"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksToleranceParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksToleranceParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksToleranceParamDispT<T>::set_x(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksToleranceParamDispT<T>::get_x()
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksToleranceParamDispT<T>::set_y(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksToleranceParamDispT<T>::get_y()
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksToleranceParamDispT<T>::set_type(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksToleranceParamDispT<T>::get_type()
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksToleranceParamDispT<T>::GetBranchArr()
{
  _TDispID _dispid(*this, OLETEXT("GetBranchArr"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksToleranceParamDispT<T>::SetBranchArr(LPDISPATCH branchArr)
{
  _TDispID _dispid(*this, OLETEXT("SetBranchArr"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = branchArr /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksToleranceParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSpcColumnParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE8A-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksSpcColumnParamDispT<T>::set_columnType(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("columnType"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksSpcColumnParamDispT<T>::get_columnType()
{
  _TDispID _dispid(*this, OLETEXT("columnType"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcColumnParamDispT<T>::set_ispoln(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ispoln"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksSpcColumnParamDispT<T>::get_ispoln()
{
  _TDispID _dispid(*this, OLETEXT("ispoln"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcColumnParamDispT<T>::set_block(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("block"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksSpcColumnParamDispT<T>::get_block()
{
  _TDispID _dispid(*this, OLETEXT("block"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcColumnParamDispT<T>::set_typeVal(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("typeVal"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksSpcColumnParamDispT<T>::get_typeVal()
{
  _TDispID _dispid(*this, OLETEXT("typeVal"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcColumnParamDispT<T>::set_name(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksSpcColumnParamDispT<T>::get_name()
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcColumnParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksRecordTypeAttrParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE8D-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> BSTR __fastcall
ksRecordTypeAttrParamDispT<T>::get_attrLibName()
{
  _TDispID _dispid(*this, OLETEXT("attrLibName"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksRecordTypeAttrParamDispT<T>::get_key1()
{
  _TDispID _dispid(*this, OLETEXT("key1"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksRecordTypeAttrParamDispT<T>::get_key2()
{
  _TDispID _dispid(*this, OLETEXT("key2"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksRecordTypeAttrParamDispT<T>::get_key3()
{
  _TDispID _dispid(*this, OLETEXT("key3"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksRecordTypeAttrParamDispT<T>::get_key4()
{
  _TDispID _dispid(*this, OLETEXT("key4"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRecordTypeAttrParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksNumberTypeAttrParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE90-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> double __fastcall
ksNumberTypeAttrParamDispT<T>::get_minValue()
{
  _TDispID _dispid(*this, OLETEXT("minValue"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksNumberTypeAttrParamDispT<T>::get_maxValue()
{
  _TDispID _dispid(*this, OLETEXT("maxValue"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNumberTypeAttrParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSpcStyleColumnParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE93-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> BSTR __fastcall
ksSpcStyleColumnParamDispT<T>::get_nameColumn()
{
  _TDispID _dispid(*this, OLETEXT("nameColumn"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpcStyleColumnParamDispT<T>::get_columnType()
{
  _TDispID _dispid(*this, OLETEXT("columnType"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpcStyleColumnParamDispT<T>::get_ispoln()
{
  _TDispID _dispid(*this, OLETEXT("ispoln"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> short __fastcall
ksSpcStyleColumnParamDispT<T>::get_edit()
{
  _TDispID _dispid(*this, OLETEXT("edit"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> short __fastcall
ksSpcStyleColumnParamDispT<T>::get_createSum()
{
  _TDispID _dispid(*this, OLETEXT("createSum"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> short __fastcall
ksSpcStyleColumnParamDispT<T>::get_multiplyToCount()
{
  _TDispID _dispid(*this, OLETEXT("multiplyToCount"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> short __fastcall
ksSpcStyleColumnParamDispT<T>::get_useForSectionTitle()
{
  _TDispID _dispid(*this, OLETEXT("useForSectionTitle"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> short __fastcall
ksSpcStyleColumnParamDispT<T>::get_textDn()
{
  _TDispID _dispid(*this, OLETEXT("textDn"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpcStyleColumnParamDispT<T>::get_linkId()
{
  _TDispID _dispid(*this, OLETEXT("linkId"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpcStyleColumnParamDispT<T>::get_typeVal()
{
  _TDispID _dispid(*this, OLETEXT("typeVal"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSpcStyleColumnParamDispT<T>::GetAdditionalParam()
{
  _TDispID _dispid(*this, OLETEXT("GetAdditionalParam"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcStyleColumnParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(12));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSpcStyleSectionParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE96-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> BSTR __fastcall
ksSpcStyleSectionParamDispT<T>::get_sectionName()
{
  _TDispID _dispid(*this, OLETEXT("sectionName"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpcStyleSectionParamDispT<T>::get_number()
{
  _TDispID _dispid(*this, OLETEXT("number"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpcStyleSectionParamDispT<T>::get_sortColumnType()
{
  _TDispID _dispid(*this, OLETEXT("sortColumnType"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpcStyleSectionParamDispT<T>::get_sortIspoln()
{
  _TDispID _dispid(*this, OLETEXT("sortIspoln"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> short __fastcall
ksSpcStyleSectionParamDispT<T>::get_dataType()
{
  _TDispID _dispid(*this, OLETEXT("dataType"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpcStyleSectionParamDispT<T>::get_sortType()
{
  _TDispID _dispid(*this, OLETEXT("sortType"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSpcStyleSectionParamDispT<T>::GetArrColumn()
{
  _TDispID _dispid(*this, OLETEXT("GetArrColumn"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSpcStyleSectionParamDispT<T>::GetArrAdditionalColumn()
{
  _TDispID _dispid(*this, OLETEXT("GetArrAdditionalColumn"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcStyleSectionParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSpcSubSectionParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE99-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> BSTR __fastcall
ksSpcSubSectionParamDispT<T>::get_name()
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpcSubSectionParamDispT<T>::get_number()
{
  _TDispID _dispid(*this, OLETEXT("number"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcSubSectionParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSpcTuningSectionParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE9C-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> short __fastcall
ksSpcTuningSectionParamDispT<T>::get_subsectionOn()
{
  _TDispID _dispid(*this, OLETEXT("subsectionOn"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> short __fastcall
ksSpcTuningSectionParamDispT<T>::get_geometryOn()
{
  _TDispID _dispid(*this, OLETEXT("geometryOn"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> short __fastcall
ksSpcTuningSectionParamDispT<T>::get_positionOn()
{
  _TDispID _dispid(*this, OLETEXT("positionOn"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> short __fastcall
ksSpcTuningSectionParamDispT<T>::get_sortOn()
{
  _TDispID _dispid(*this, OLETEXT("sortOn"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> short __fastcall
ksSpcTuningSectionParamDispT<T>::get_firstOnSheet()
{
  _TDispID _dispid(*this, OLETEXT("firstOnSheet"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpcTuningSectionParamDispT<T>::get_rezervCount()
{
  _TDispID _dispid(*this, OLETEXT("rezervCount"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpcTuningSectionParamDispT<T>::get_number()
{
  _TDispID _dispid(*this, OLETEXT("number"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSpcTuningSectionParamDispT<T>::GetArrSubSection()
{
  _TDispID _dispid(*this, OLETEXT("GetArrSubSection"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcTuningSectionParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSpcTuningStyleParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CE9F-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksSpcTuningStyleParamDispT<T>::set_grToSP(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("grToSP"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcTuningStyleParamDispT<T>::get_grToSP()
{
  _TDispID _dispid(*this, OLETEXT("grToSP"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcTuningStyleParamDispT<T>::set_zoneCalc(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("zoneCalc"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcTuningStyleParamDispT<T>::get_zoneCalc()
{
  _TDispID _dispid(*this, OLETEXT("zoneCalc"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcTuningStyleParamDispT<T>::set_showSectionName(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("showSectionName"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcTuningStyleParamDispT<T>::get_showSectionName()
{
  _TDispID _dispid(*this, OLETEXT("showSectionName"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcTuningStyleParamDispT<T>::set_positionCalc(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("positionCalc"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcTuningStyleParamDispT<T>::get_positionCalc()
{
  _TDispID _dispid(*this, OLETEXT("positionCalc"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcTuningStyleParamDispT<T>::set_geometryDel(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("geometryDel"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcTuningStyleParamDispT<T>::get_geometryDel()
{
  _TDispID _dispid(*this, OLETEXT("geometryDel"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcTuningStyleParamDispT<T>::set_positionDel(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("positionDel"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcTuningStyleParamDispT<T>::get_positionDel()
{
  _TDispID _dispid(*this, OLETEXT("positionDel"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcTuningStyleParamDispT<T>::set_massCalc(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("massCalc"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcTuningStyleParamDispT<T>::get_massCalc()
{
  _TDispID _dispid(*this, OLETEXT("massCalc"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcTuningStyleParamDispT<T>::set_disableEmptyStr(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("disableEmptyStr"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcTuningStyleParamDispT<T>::get_disableEmptyStr()
{
  _TDispID _dispid(*this, OLETEXT("disableEmptyStr"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcTuningStyleParamDispT<T>::set_insertNull(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("insertNull"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcTuningStyleParamDispT<T>::get_insertNull()
{
  _TDispID _dispid(*this, OLETEXT("insertNull"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcTuningStyleParamDispT<T>::set_insertDash(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("insertDash"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcTuningStyleParamDispT<T>::get_insertDash()
{
  _TDispID _dispid(*this, OLETEXT("insertDash"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcTuningStyleParamDispT<T>::set_disableEmptyBlockStr(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("disableEmptyBlockStr"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcTuningStyleParamDispT<T>::get_disableEmptyBlockStr()
{
  _TDispID _dispid(*this, OLETEXT("disableEmptyBlockStr"), DISPID(11));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcTuningStyleParamDispT<T>::set_showInfoByDetBlock(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("showInfoByDetBlock"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcTuningStyleParamDispT<T>::get_showInfoByDetBlock()
{
  _TDispID _dispid(*this, OLETEXT("showInfoByDetBlock"), DISPID(12));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcTuningStyleParamDispT<T>::set_ispolnOn(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ispolnOn"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcTuningStyleParamDispT<T>::get_ispolnOn()
{
  _TDispID _dispid(*this, OLETEXT("ispolnOn"), DISPID(13));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcTuningStyleParamDispT<T>::set_ispolnMarkFull(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ispolnMarkFull"), DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcTuningStyleParamDispT<T>::get_ispolnMarkFull()
{
  _TDispID _dispid(*this, OLETEXT("ispolnMarkFull"), DISPID(14));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcTuningStyleParamDispT<T>::set_blocOnNewPage(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("blocOnNewPage"), DISPID(15));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcTuningStyleParamDispT<T>::get_blocOnNewPage()
{
  _TDispID _dispid(*this, OLETEXT("blocOnNewPage"), DISPID(15));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcTuningStyleParamDispT<T>::set_userTextStyle(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("userTextStyle"), DISPID(16));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcTuningStyleParamDispT<T>::get_userTextStyle()
{
  _TDispID _dispid(*this, OLETEXT("userTextStyle"), DISPID(16));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcTuningStyleParamDispT<T>::set_countIspoln(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("countIspoln"), DISPID(17));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcTuningStyleParamDispT<T>::get_countIspoln()
{
  _TDispID _dispid(*this, OLETEXT("countIspoln"), DISPID(17));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcTuningStyleParamDispT<T>::set_countBlock(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("countBlock"), DISPID(18));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcTuningStyleParamDispT<T>::get_countBlock()
{
  _TDispID _dispid(*this, OLETEXT("countBlock"), DISPID(18));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcTuningStyleParamDispT<T>::set_predefinedTextFileName(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("predefinedTextFileName"), DISPID(19));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksSpcTuningStyleParamDispT<T>::get_predefinedTextFileName()
{
  _TDispID _dispid(*this, OLETEXT("predefinedTextFileName"), DISPID(19));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcTuningStyleParamDispT<T>::set_delSpcObjOnDelGeometry(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("delSpcObjOnDelGeometry"), DISPID(29));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcTuningStyleParamDispT<T>::get_delSpcObjOnDelGeometry()
{
  _TDispID _dispid(*this, OLETEXT("delSpcObjOnDelGeometry"), DISPID(29));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcTuningStyleParamDispT<T>::set_copySpcObjOnCopyGeometry(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("copySpcObjOnCopyGeometry"), DISPID(30));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcTuningStyleParamDispT<T>::get_copySpcObjOnCopyGeometry()
{
  _TDispID _dispid(*this, OLETEXT("copySpcObjOnCopyGeometry"), DISPID(30));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSpcTuningStyleParamDispT<T>::GetSectionTextStyleFirst()
{
  _TDispID _dispid(*this, OLETEXT("GetSectionTextStyleFirst"), DISPID(20));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSpcTuningStyleParamDispT<T>::GetSectionTextStyleNext()
{
  _TDispID _dispid(*this, OLETEXT("GetSectionTextStyleNext"), DISPID(21));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSpcTuningStyleParamDispT<T>::GetObjectTextStyle()
{
  _TDispID _dispid(*this, OLETEXT("GetObjectTextStyle"), DISPID(22));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSpcTuningStyleParamDispT<T>::GetArrSection()
{
  _TDispID _dispid(*this, OLETEXT("GetArrSection"), DISPID(23));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcTuningStyleParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(24));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcTuningStyleParamDispT<T>::SetSectionTextStyleFirst(LPDISPATCH style)
{
  _TDispID _dispid(*this, OLETEXT("SetSectionTextStyleFirst"), DISPID(25));
  TAutoArgs<1> _args;
  _args[1] = style /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcTuningStyleParamDispT<T>::SetSectionTextStyleNext(LPDISPATCH style)
{
  _TDispID _dispid(*this, OLETEXT("SetSectionTextStyleNext"), DISPID(26));
  TAutoArgs<1> _args;
  _args[1] = style /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcTuningStyleParamDispT<T>::SetObjectTextStyle(LPDISPATCH style)
{
  _TDispID _dispid(*this, OLETEXT("SetObjectTextStyle"), DISPID(27));
  TAutoArgs<1> _args;
  _args[1] = style /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcTuningStyleParamDispT<T>::SetArrSection(LPDISPATCH arr)
{
  _TDispID _dispid(*this, OLETEXT("SetArrSection"), DISPID(28));
  TAutoArgs<1> _args;
  _args[1] = arr /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSpcStyleParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CEA2-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> BSTR __fastcall
ksSpcStyleParamDispT<T>::get_layoutName1()
{
  _TDispID _dispid(*this, OLETEXT("layoutName1"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksSpcStyleParamDispT<T>::get_layoutName2()
{
  _TDispID _dispid(*this, OLETEXT("layoutName2"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpcStyleParamDispT<T>::get_shtType1()
{
  _TDispID _dispid(*this, OLETEXT("shtType1"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpcStyleParamDispT<T>::get_shtType2()
{
  _TDispID _dispid(*this, OLETEXT("shtType2"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> short __fastcall
ksSpcStyleParamDispT<T>::get_variant()
{
  _TDispID _dispid(*this, OLETEXT("variant"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> short __fastcall
ksSpcStyleParamDispT<T>::get_sectionOn()
{
  _TDispID _dispid(*this, OLETEXT("sectionOn"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> short __fastcall
ksSpcStyleParamDispT<T>::get_type()
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSpcStyleParamDispT<T>::GetTuning()
{
  _TDispID _dispid(*this, OLETEXT("GetTuning"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSpcStyleParamDispT<T>::GetArrColumn()
{
  _TDispID _dispid(*this, OLETEXT("GetArrColumn"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSpcStyleParamDispT<T>::GetArrAdditionalColumn()
{
  _TDispID _dispid(*this, OLETEXT("GetArrAdditionalColumn"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSpcStyleParamDispT<T>::GetArrSection()
{
  _TDispID _dispid(*this, OLETEXT("GetArrSection"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSpcStyleParamDispT<T>::GetSheetParam()
{
  _TDispID _dispid(*this, OLETEXT("GetSheetParam"), DISPID(12));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcStyleParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(13));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSpcDescrParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CEA5-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksSpcDescrParamDispT<T>::set_layoutName(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("layoutName"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksSpcDescrParamDispT<T>::get_layoutName()
{
  _TDispID _dispid(*this, OLETEXT("layoutName"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcDescrParamDispT<T>::set_styleId(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("styleId"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksSpcDescrParamDispT<T>::get_styleId()
{
  _TDispID _dispid(*this, OLETEXT("styleId"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcDescrParamDispT<T>::set_spcName(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("spcName"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksSpcDescrParamDispT<T>::get_spcName()
{
  _TDispID _dispid(*this, OLETEXT("spcName"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcDescrParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksDocAttachedSpcParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CEA8-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksDocAttachedSpcParamDispT<T>::set_fileName(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("fileName"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksDocAttachedSpcParamDispT<T>::get_fileName()
{
  _TDispID _dispid(*this, OLETEXT("fileName"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocAttachedSpcParamDispT<T>::set_comment(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("comment"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksDocAttachedSpcParamDispT<T>::get_comment()
{
  _TDispID _dispid(*this, OLETEXT("comment"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksDocAttachedSpcParamDispT<T>::set_transmit(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("transmit"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksDocAttachedSpcParamDispT<T>::get_transmit()
{
  _TDispID _dispid(*this, OLETEXT("transmit"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocAttachedSpcParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSpcObjParam
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CEAB-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksSpcObjParamDispT<T>::set_blockNumber(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("blockNumber"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksSpcObjParamDispT<T>::get_blockNumber()
{
  _TDispID _dispid(*this, OLETEXT("blockNumber"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcObjParamDispT<T>::set_numbSubSection(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("numbSubSection"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksSpcObjParamDispT<T>::get_numbSubSection()
{
  _TDispID _dispid(*this, OLETEXT("numbSubSection"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcObjParamDispT<T>::set_firstOnSheet(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("firstOnSheet"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcObjParamDispT<T>::get_firstOnSheet()
{
  _TDispID _dispid(*this, OLETEXT("firstOnSheet"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcObjParamDispT<T>::set_posInc(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("posInc"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcObjParamDispT<T>::get_posInc()
{
  _TDispID _dispid(*this, OLETEXT("posInc"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcObjParamDispT<T>::set_draw(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("draw"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcObjParamDispT<T>::get_draw()
{
  _TDispID _dispid(*this, OLETEXT("draw"), DISPID(12));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcObjParamDispT<T>::set_posNotDraw(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("posNotDraw"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcObjParamDispT<T>::get_posNotDraw()
{
  _TDispID _dispid(*this, OLETEXT("posNotDraw"), DISPID(13));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSpcObjParamDispT<T>::set_ispoln(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ispoln"), DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksSpcObjParamDispT<T>::get_ispoln()
{
  _TDispID _dispid(*this, OLETEXT("ispoln"), DISPID(14));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSpcObjParamDispT<T>::GetDocArr()
{
  _TDispID _dispid(*this, OLETEXT("GetDocArr"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcObjParamDispT<T>::SetDocArr(LPDISPATCH docArr)
{
  _TDispID _dispid(*this, OLETEXT("SetDocArr"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = docArr /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpcObjParamDispT<T>::get_typeObj()
{
  _TDispID _dispid(*this, OLETEXT("typeObj"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpcObjParamDispT<T>::get_numbSection()
{
  _TDispID _dispid(*this, OLETEXT("numbSection"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksSpcObjParamDispT<T>::get_subSectionName()
{
  _TDispID _dispid(*this, OLETEXT("subSectionName"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> short __fastcall
ksSpcObjParamDispT<T>::get_insFrgType()
{
  _TDispID _dispid(*this, OLETEXT("insFrgType"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> short __fastcall
ksSpcObjParamDispT<T>::get_First()
{
  _TDispID _dispid(*this, OLETEXT("First"), DISPID(11));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcObjParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(15));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksLibStyle
// Flags:     (4096) Dispatchable
// GUID:      {4FD7CEAE-9968-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksLibStyleDispT<T>::set_fileName(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("fileName"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksLibStyleDispT<T>::get_fileName()
{
  _TDispID _dispid(*this, OLETEXT("fileName"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLibStyleDispT<T>::set_styleNumber(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("styleNumber"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksLibStyleDispT<T>::get_styleNumber()
{
  _TDispID _dispid(*this, OLETEXT("styleNumber"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLibStyleDispT<T>::set_typeAllocation(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("typeAllocation"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksLibStyleDispT<T>::get_typeAllocation()
{
  _TDispID _dispid(*this, OLETEXT("typeAllocation"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksLibStyleDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksDataBaseObject
// Flags:     (4096) Dispatchable
// GUID:      {0981CD01-9A49-11D6-8732-00C0262CDD2C}
// *********************************************************************//
template <class T> long __fastcall
ksDataBaseObjectDispT<T>::ksRelation(long db)
{
  _TDispID _dispid(*this, OLETEXT("ksRelation"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = db /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDataBaseObjectDispT<T>::ksEndRelation()
{
  _TDispID _dispid(*this, OLETEXT("ksEndRelation"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDataBaseObjectDispT<T>::ksCreateDB(BSTR typeBD)
{
  _TDispID _dispid(*this, OLETEXT("ksCreateDB"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = typeBD /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDataBaseObjectDispT<T>::ksDeleteDB(long db)
{
  _TDispID _dispid(*this, OLETEXT("ksDeleteDB"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = db /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDataBaseObjectDispT<T>::ksConnectDB(long db, BSTR DBName)
{
  _TDispID _dispid(*this, OLETEXT("ksConnectDB"), DISPID(5));
  TAutoArgs<2> _args;
  _args[1] = db /*[VT_I4:0]*/;
  _args[2] = DBName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDataBaseObjectDispT<T>::ksDisconnectDB(long db)
{
  _TDispID _dispid(*this, OLETEXT("ksDisconnectDB"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = db /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDataBaseObjectDispT<T>::ksFreeStatement(long db, long r, long fOption)
{
  _TDispID _dispid(*this, OLETEXT("ksFreeStatement"), DISPID(7));
  TAutoArgs<3> _args;
  _args[1] = db /*[VT_I4:0]*/;
  _args[2] = r /*[VT_I4:0]*/;
  _args[3] = fOption /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDataBaseObjectDispT<T>::ksDoStatement(long db, long r, BSTR stSQL)
{
  _TDispID _dispid(*this, OLETEXT("ksDoStatement"), DISPID(8));
  TAutoArgs<3> _args;
  _args[1] = db /*[VT_I4:0]*/;
  _args[2] = r /*[VT_I4:0]*/;
  _args[3] = stSQL /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDataBaseObjectDispT<T>::ksReadRecord(long db, long r, LPDISPATCH userPars)
{
  _TDispID _dispid(*this, OLETEXT("ksReadRecord"), DISPID(9));
  TAutoArgs<3> _args;
  _args[1] = db /*[VT_I4:0]*/;
  _args[2] = r /*[VT_I4:0]*/;
  _args[3] = userPars /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDataBaseObjectDispT<T>::ksCondition(long db, long r, BSTR stSQL)
{
  _TDispID _dispid(*this, OLETEXT("ksCondition"), DISPID(10));
  TAutoArgs<3> _args;
  _args[1] = db /*[VT_I4:0]*/;
  _args[2] = r /*[VT_I4:0]*/;
  _args[3] = stSQL /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDataBaseObjectDispT<T>::ksRDouble(BSTR name)
{
  _TDispID _dispid(*this, OLETEXT("ksRDouble"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = name /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDataBaseObjectDispT<T>::ksRFloat(BSTR name)
{
  _TDispID _dispid(*this, OLETEXT("ksRFloat"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = name /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDataBaseObjectDispT<T>::ksRInt(BSTR name)
{
  _TDispID _dispid(*this, OLETEXT("ksRInt"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = name /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDataBaseObjectDispT<T>::ksRLong(BSTR name)
{
  _TDispID _dispid(*this, OLETEXT("ksRLong"), DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = name /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDataBaseObjectDispT<T>::ksRChar(BSTR name, long size, long type)
{
  _TDispID _dispid(*this, OLETEXT("ksRChar"), DISPID(15));
  TAutoArgs<3> _args;
  _args[1] = name /*[VT_BSTR:0]*/;
  _args[2] = size /*[VT_I4:0]*/;
  _args[3] = type /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDataBaseObjectDispT<T>::ksOpenTextFile(BSTR fileName)
{
  _TDispID _dispid(*this, OLETEXT("ksOpenTextFile"), DISPID(16));
  TAutoArgs<1> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDataBaseObjectDispT<T>::ksCloseTextFile(long F)
{
  _TDispID _dispid(*this, OLETEXT("ksCloseTextFile"), DISPID(17));
  TAutoArgs<1> _args;
  _args[1] = F /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksDataBaseObjectDispT<T>::ksReadStrFrFile(long F, long* res, long numb)
{
  _TDispID _dispid(*this, OLETEXT("ksReadStrFrFile"), DISPID(18));
  TAutoArgs<3> _args;
  _args[1] = F /*[VT_I4:0]*/;
  _args[2] = res /*[VT_I4:1]*/;
  _args[3] = numb /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksDataBaseObjectDispT<T>::ksGetTableName(long db, long* res, BSTR firstOrNext)
{
  _TDispID _dispid(*this, OLETEXT("ksGetTableName"), DISPID(19));
  TAutoArgs<3> _args;
  _args[1] = db /*[VT_I4:0]*/;
  _args[2] = res /*[VT_I4:1]*/;
  _args[3] = firstOrNext /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksDataBaseObjectDispT<T>::ksGetColumnName(long db, BSTR tableName, long* res, BSTR firstOrNext)
{
  _TDispID _dispid(*this, OLETEXT("ksGetColumnName"), DISPID(20));
  TAutoArgs<4> _args;
  _args[1] = db /*[VT_I4:0]*/;
  _args[2] = tableName /*[VT_BSTR:0]*/;
  _args[3] = res /*[VT_I4:1]*/;
  _args[4] = firstOrNext /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDataBaseObjectDispT<T>::ksIsODBCOkey()
{
  _TDispID _dispid(*this, OLETEXT("ksIsODBCOkey"), DISPID(21));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDataBaseObjectDispT<T>::ksRCharW(BSTR name, long size, long type)
{
  _TDispID _dispid(*this, OLETEXT("ksRCharW"), DISPID(22));
  TAutoArgs<3> _args;
  _args[1] = name /*[VT_BSTR:0]*/;
  _args[2] = size /*[VT_I4:0]*/;
  _args[3] = type /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDataBaseObjectDispT<T>::ksOpenTextFileEx(BSTR fileName, long textFileType)
{
  _TDispID _dispid(*this, OLETEXT("ksOpenTextFileEx"), DISPID(23));
  TAutoArgs<2> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = textFileType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSpcDocumentNotify
// Flags:     (4096) Dispatchable
// GUID:      {1BD030F4-4058-4A86-9F4F-1AEEF8BE8D23}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksSpcDocumentNotifyDispT<T>::DocumentBeginAdd()
{
  _TDispID _dispid(/* DocumentBeginAdd */ DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcDocumentNotifyDispT<T>::DocumentAdd(BSTR docName)
{
  _TDispID _dispid(/* DocumentAdd */ DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = docName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcDocumentNotifyDispT<T>::DocumentBeginRemove(BSTR docName)
{
  _TDispID _dispid(/* DocumentBeginRemove */ DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = docName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcDocumentNotifyDispT<T>::DocumentRemove(BSTR docName)
{
  _TDispID _dispid(/* DocumentRemove */ DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = docName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcDocumentNotifyDispT<T>::SpcStyleBeginChange(BSTR libName, long numb)
{
  _TDispID _dispid(/* SpcStyleBeginChange */ DISPID(5));
  TAutoArgs<2> _args;
  _args[1] = libName /*[VT_BSTR:0]*/;
  _args[2] = numb /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcDocumentNotifyDispT<T>::SpcStyleChange(BSTR libName, long numb)
{
  _TDispID _dispid(/* SpcStyleChange */ DISPID(6));
  TAutoArgs<2> _args;
  _args[1] = libName /*[VT_BSTR:0]*/;
  _args[2] = numb /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSpcDocument
// Flags:     (4096) Dispatchable
// GUID:      {51E74521-9A3A-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksSpcDocumentDispT<T>::set_reference(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("reference"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksSpcDocumentDispT<T>::get_reference()
{
  _TDispID _dispid(*this, OLETEXT("reference"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSpcDocumentDispT<T>::GetStamp()
{
  _TDispID _dispid(*this, OLETEXT("GetStamp"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSpcDocumentDispT<T>::GetSpecification()
{
  _TDispID _dispid(*this, OLETEXT("GetSpecification"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcDocumentDispT<T>::ksCloseDocument()
{
  _TDispID _dispid(*this, OLETEXT("ksCloseDocument"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSpcDocumentDispT<T>::ksGetSpcSheetSB()
{
  _TDispID _dispid(*this, OLETEXT("ksGetSpcSheetSB"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpcDocumentDispT<T>::ksGetSpcDocumentPagesCount()
{
  _TDispID _dispid(*this, OLETEXT("ksGetSpcDocumentPagesCount"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcDocumentDispT<T>::ksSaveDocument(BSTR fileName)
{
  _TDispID _dispid(*this, OLETEXT("ksSaveDocument"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcDocumentDispT<T>::ksCreateDocument(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksCreateDocument"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpcDocumentDispT<T>::ksDeleteObj(long ref)
{
  _TDispID _dispid(*this, OLETEXT("ksDeleteObj"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = ref /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpcDocumentDispT<T>::ksSetSpcSheetSB(LPDISPATCH arr)
{
  _TDispID _dispid(*this, OLETEXT("ksSetSpcSheetSB"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = arr /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpcDocumentDispT<T>::ksExistObj(long ref)
{
  _TDispID _dispid(*this, OLETEXT("ksExistObj"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = ref /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcDocumentDispT<T>::ksOpenDocument(BSTR nameDoc, short regim)
{
  _TDispID _dispid(*this, OLETEXT("ksOpenDocument"), DISPID(12));
  TAutoArgs<2> _args;
  _args[1] = nameDoc /*[VT_BSTR:0]*/;
  _args[2] = regim /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpcDocumentDispT<T>::ksGetObjParam(long ref, LPDISPATCH param, long parType/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("ksGetObjParam"), DISPID(13));
  TAutoArgs<3> _args;
  _args[1] = ref /*[VT_I4:0]*/;
  _args[2] = param /*[VT_DISPATCH:0]*/;
  _args[3] = parType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpcDocumentDispT<T>::ksSetObjParam(long ref, LPDISPATCH param, long parType/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("ksSetObjParam"), DISPID(14));
  TAutoArgs<3> _args;
  _args[1] = ref /*[VT_I4:0]*/;
  _args[2] = param /*[VT_DISPATCH:0]*/;
  _args[3] = parType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcDocumentDispT<T>::SaveAsToRasterFormat(BSTR fileName, LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("SaveAsToRasterFormat"), DISPID(15));
  TAutoArgs<2> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSpcDocumentDispT<T>::RasterFormatParam()
{
  _TDispID _dispid(*this, OLETEXT("RasterFormatParam"), DISPID(16));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcDocumentDispT<T>::SaveAsToUncompressedRasterFormat(BSTR fileName, LPDISPATCH rasterPar)
{
  _TDispID _dispid(*this, OLETEXT("SaveAsToUncompressedRasterFormat"), DISPID(17));
  TAutoArgs<2> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = rasterPar /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::SpcDocumentNotifyPtr __fastcall
ksSpcDocumentDispT<T>::GetSpcDocumentNotify()
{
  _TDispID _dispid(*this, OLETEXT("GetSpcDocumentNotify"), DISPID(18));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return Kompas6api5_tlb::SpcDocumentNotifyPtr( (LPUNKNOWN) /*[VT_UNKNOWN:1]*/_args.GetRetVariant(), false );
}

template <class T> TOLEBOOL __fastcall
ksSpcDocumentDispT<T>::ksSaveDocumentEx(BSTR fileName, long SaveMode)
{
  _TDispID _dispid(*this, OLETEXT("ksSaveDocumentEx"), DISPID(19));
  TAutoArgs<2> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = SaveMode /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSpcDocumentDispT<T>::GetStampEx(long SheetNumb)
{
  _TDispID _dispid(*this, OLETEXT("GetStampEx"), DISPID(20));
  TAutoArgs<1> _args;
  _args[1] = SheetNumb /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcDocumentDispT<T>::ksSaveToDXF(BSTR DXFFileName)
{
  _TDispID _dispid(*this, OLETEXT("ksSaveToDXF"), DISPID(21));
  TAutoArgs<1> _args;
  _args[1] = DXFFileName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSpcObjectNotify
// Flags:     (4096) Dispatchable
// GUID:      {AC5004D1-C240-41FC-AB84-7EB5C793AE7F}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksSpcObjectNotifyDispT<T>::BeginDelete(long objRef)
{
  _TDispID _dispid(/* BeginDelete */ DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcObjectNotifyDispT<T>::Delete(long objRef)
{
  _TDispID _dispid(/* Delete */ DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcObjectNotifyDispT<T>::CellDblClick(long objRef, long number)
{
  _TDispID _dispid(/* CellDblClick */ DISPID(3));
  TAutoArgs<2> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  _args[2] = number /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcObjectNotifyDispT<T>::CellBeginEdit(long objRef, long number)
{
  _TDispID _dispid(/* CellBeginEdit */ DISPID(4));
  TAutoArgs<2> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  _args[2] = number /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcObjectNotifyDispT<T>::ChangeCurrent(long objRef)
{
  _TDispID _dispid(/* ChangeCurrent */ DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcObjectNotifyDispT<T>::DocumentBeginAdd(long objRef)
{
  _TDispID _dispid(/* DocumentBeginAdd */ DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcObjectNotifyDispT<T>::DocumentAdd(long objRef, BSTR docName)
{
  _TDispID _dispid(/* DocumentAdd */ DISPID(7));
  TAutoArgs<2> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  _args[2] = docName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcObjectNotifyDispT<T>::DocumentRemove(long objRef, BSTR docName)
{
  _TDispID _dispid(/* DocumentRemove */ DISPID(8));
  TAutoArgs<2> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  _args[2] = docName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcObjectNotifyDispT<T>::BeginGeomChange(long objRef)
{
  _TDispID _dispid(/* BeginGeomChange */ DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcObjectNotifyDispT<T>::GeomChange(long objRef)
{
  _TDispID _dispid(/* GeomChange */ DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcObjectNotifyDispT<T>::BeginProcess(long pType, long objRef)
{
  _TDispID _dispid(/* BeginProcess */ DISPID(11));
  TAutoArgs<2> _args;
  _args[1] = pType /*[VT_I4:0]*/;
  _args[2] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcObjectNotifyDispT<T>::EndProcess(long pType)
{
  _TDispID _dispid(/* EndProcess */ DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = pType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcObjectNotifyDispT<T>::CreateObject(long objRef)
{
  _TDispID _dispid(/* CreateObject */ DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcObjectNotifyDispT<T>::UpdateObject(long objRef)
{
  _TDispID _dispid(/* UpdateObject */ DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcObjectNotifyDispT<T>::BeginCopy(long objRef)
{
  _TDispID _dispid(/* BeginCopy */ DISPID(15));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpcObjectNotifyDispT<T>::copy(long objRef)
{
  _TDispID _dispid(/* copy */ DISPID(16));
  TAutoArgs<1> _args;
  _args[1] = objRef /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSpecificationNotify
// Flags:     (4096) Dispatchable
// GUID:      {0331AB4B-F25B-4EB9-9C8A-BFEA414E3822}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksSpecificationNotifyDispT<T>::TuningSpcStyleBeginChange(BSTR libName, long numb)
{
  _TDispID _dispid(/* TuningSpcStyleBeginChange */ DISPID(1));
  TAutoArgs<2> _args;
  _args[1] = libName /*[VT_BSTR:0]*/;
  _args[2] = numb /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpecificationNotifyDispT<T>::TuningSpcStyleChange(BSTR libName, long numb, TOLEBOOL isOk)
{
  _TDispID _dispid(/* TuningSpcStyleChange */ DISPID(2));
  TAutoArgs<3> _args;
  _args[1] = libName /*[VT_BSTR:0]*/;
  _args[2] = numb /*[VT_I4:0]*/;
  _args[3] = isOk /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpecificationNotifyDispT<T>::ChangeCurrentSpcDescription(BSTR libName, long numb)
{
  _TDispID _dispid(/* ChangeCurrentSpcDescription */ DISPID(3));
  TAutoArgs<2> _args;
  _args[1] = libName /*[VT_BSTR:0]*/;
  _args[2] = numb /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpecificationNotifyDispT<T>::SpcDescriptionAdd(BSTR libName, long numb)
{
  _TDispID _dispid(/* SpcDescriptionAdd */ DISPID(4));
  TAutoArgs<2> _args;
  _args[1] = libName /*[VT_BSTR:0]*/;
  _args[2] = numb /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpecificationNotifyDispT<T>::SpcDescriptionRemove(BSTR libName, long numb)
{
  _TDispID _dispid(/* SpcDescriptionRemove */ DISPID(5));
  TAutoArgs<2> _args;
  _args[1] = libName /*[VT_BSTR:0]*/;
  _args[2] = numb /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpecificationNotifyDispT<T>::SpcDescriptionBeginEdit(BSTR libName, long numb)
{
  _TDispID _dispid(/* SpcDescriptionBeginEdit */ DISPID(6));
  TAutoArgs<2> _args;
  _args[1] = libName /*[VT_BSTR:0]*/;
  _args[2] = numb /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpecificationNotifyDispT<T>::SpcDescriptionEdit(BSTR libName, long numb, TOLEBOOL isOk)
{
  _TDispID _dispid(/* SpcDescriptionEdit */ DISPID(7));
  TAutoArgs<3> _args;
  _args[1] = libName /*[VT_BSTR:0]*/;
  _args[2] = numb /*[VT_I4:0]*/;
  _args[3] = isOk /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpecificationNotifyDispT<T>::SynchronizationBegin()
{
  _TDispID _dispid(/* SynchronizationBegin */ DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpecificationNotifyDispT<T>::Synchronization()
{
  _TDispID _dispid(/* Synchronization */ DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpecificationNotifyDispT<T>::BeginCalcPositions()
{
  _TDispID _dispid(/* BeginCalcPositions */ DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpecificationNotifyDispT<T>::CalcPositions()
{
  _TDispID _dispid(/* CalcPositions */ DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpecificationNotifyDispT<T>::BeginCreateObject(long typeObj)
{
  _TDispID _dispid(/* BeginCreateObject */ DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = typeObj /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSpecification
// Flags:     (4096) Dispatchable
// GUID:      {51E74524-9A3A-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> long __fastcall
ksSpecificationDispT<T>::ksSpcObjectEnd()
{
  _TDispID _dispid(*this, OLETEXT("ksSpcObjectEnd"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksSpcObjectEdit(long spcObj)
{
  _TDispID _dispid(*this, OLETEXT("ksSpcObjectEdit"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = spcObj /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksSpcObjectCreate(BSTR nameLib, long styleNumb, long secNumb, 
                                           long subSecNumb, double numb, short typeObj)
{
  _TDispID _dispid(*this, OLETEXT("ksSpcObjectCreate"), DISPID(3));
  TAutoArgs<6> _args;
  _args[1] = nameLib /*[VT_BSTR:0]*/;
  _args[2] = styleNumb /*[VT_I4:0]*/;
  _args[3] = secNumb /*[VT_I4:0]*/;
  _args[4] = subSecNumb /*[VT_I4:0]*/;
  _args[5] = numb /*[VT_R8:0]*/;
  _args[6] = typeObj /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksSpcChangeValue(long colNumb, long itemNumb, LPDISPATCH userPars, 
                                          short typeVal)
{
  _TDispID _dispid(*this, OLETEXT("ksSpcChangeValue"), DISPID(4));
  TAutoArgs<4> _args;
  _args[1] = colNumb /*[VT_I4:0]*/;
  _args[2] = itemNumb /*[VT_I4:0]*/;
  _args[3] = userPars /*[VT_DISPATCH:0]*/;
  _args[4] = typeVal /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksSpcVisible(long colNumb, long itemNumb, short flagOn)
{
  _TDispID _dispid(*this, OLETEXT("ksSpcVisible"), DISPID(5));
  TAutoArgs<3> _args;
  _args[1] = colNumb /*[VT_I4:0]*/;
  _args[2] = itemNumb /*[VT_I4:0]*/;
  _args[3] = flagOn /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksSpcMassa(BSTR sMassa)
{
  _TDispID _dispid(*this, OLETEXT("ksSpcMassa"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = sMassa /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksSpcCount(short ispoln, BSTR sCount)
{
  _TDispID _dispid(*this, OLETEXT("ksSpcCount"), DISPID(7));
  TAutoArgs<2> _args;
  _args[1] = ispoln /*[VT_I2:0]*/;
  _args[2] = sCount /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksSpcPosition(long pos)
{
  _TDispID _dispid(*this, OLETEXT("ksSpcPosition"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = pos /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksSpcIncludeReference(long obj, short Clear)
{
  _TDispID _dispid(*this, OLETEXT("ksSpcIncludeReference"), DISPID(9));
  TAutoArgs<2> _args;
  _args[1] = obj /*[VT_I4:0]*/;
  _args[2] = Clear /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksGetSpcObjForGeom(BSTR nameLib, long numb, long obj, short equal, 
                                            short First)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSpcObjForGeom"), DISPID(10));
  TAutoArgs<5> _args;
  _args[1] = nameLib /*[VT_BSTR:0]*/;
  _args[2] = numb /*[VT_I4:0]*/;
  _args[3] = obj /*[VT_I4:0]*/;
  _args[4] = equal /*[VT_I2:0]*/;
  _args[5] = First /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksGetSpcObjForGeomWithLimit(BSTR nameLib, long numb, long obj, short equal
                                                     , short First, long section, 
                                                     double attrTypeNumb)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSpcObjForGeomWithLimit"), DISPID(11));
  TAutoArgs<7> _args;
  _args[1] = nameLib /*[VT_BSTR:0]*/;
  _args[2] = numb /*[VT_I4:0]*/;
  _args[3] = obj /*[VT_I4:0]*/;
  _args[4] = equal /*[VT_I2:0]*/;
  _args[5] = First /*[VT_I2:0]*/;
  _args[6] = section /*[VT_I4:0]*/;
  _args[7] = attrTypeNumb /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksSpecificationDispT<T>::ksGetSpcSectionName(long spcObj)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSpcSectionName"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = spcObj /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksEditWindowSpcObject(long obj)
{
  _TDispID _dispid(*this, OLETEXT("ksEditWindowSpcObject"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksSpecificationDispT<T>::ksGetSpcObjectNumber(long spcObj)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSpcObjectNumber"), DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = spcObj /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksGetSpcObject(double objNumb)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSpcObject"), DISPID(15));
  TAutoArgs<1> _args;
  _args[1] = objNumb /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksSpecificationDispT<T>::ksGetSpcObjectColumnText(long spcObj, long columnType, long ispoln, 
                                                  long block)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSpcObjectColumnText"), DISPID(16));
  TAutoArgs<4> _args;
  _args[1] = spcObj /*[VT_I4:0]*/;
  _args[2] = columnType /*[VT_I4:0]*/;
  _args[3] = ispoln /*[VT_I4:0]*/;
  _args[4] = block /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksSetSpcObjectColumnText(long columnType, long ispoln, long block, BSTR str)
{
  _TDispID _dispid(*this, OLETEXT("ksSetSpcObjectColumnText"), DISPID(17));
  TAutoArgs<4> _args;
  _args[1] = columnType /*[VT_I4:0]*/;
  _args[2] = ispoln /*[VT_I4:0]*/;
  _args[3] = block /*[VT_I4:0]*/;
  _args[4] = str /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksGetSpcTableColumn(BSTR nameLib, long numb, short additioanalCol)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSpcTableColumn"), DISPID(18));
  TAutoArgs<3> _args;
  _args[1] = nameLib /*[VT_BSTR:0]*/;
  _args[2] = numb /*[VT_I4:0]*/;
  _args[3] = additioanalCol /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksGetSpcColumnType(long spcObj, long colNumb, LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSpcColumnType"), DISPID(19));
  TAutoArgs<3> _args;
  _args[1] = spcObj /*[VT_I4:0]*/;
  _args[2] = colNumb /*[VT_I4:0]*/;
  _args[3] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksGetSpcColumnNumb(long spcObj, long columnType, long ispoln, long block)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSpcColumnNumb"), DISPID(20));
  TAutoArgs<4> _args;
  _args[1] = spcObj /*[VT_I4:0]*/;
  _args[2] = columnType /*[VT_I4:0]*/;
  _args[3] = ispoln /*[VT_I4:0]*/;
  _args[4] = block /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksGetSpcStyleParam(BSTR nameLib, long numb, LPDISPATCH par, long tPar)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSpcStyleParam"), DISPID(21));
  TAutoArgs<4> _args;
  _args[1] = nameLib /*[VT_BSTR:0]*/;
  _args[2] = numb /*[VT_I4:0]*/;
  _args[3] = par /*[VT_DISPATCH:0]*/;
  _args[4] = tPar /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksGetSpcDescription(long index, LPDISPATCH param, TOLEBOOL* state)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSpcDescription"), DISPID(22));
  TAutoArgs<3> _args;
  _args[1] = index /*[VT_I4:0]*/;
  _args[2] = param /*[VT_DISPATCH:0]*/;
  _args[3] = state /*[VT_BOOL:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksSetSpcDescription(long index, LPDISPATCH param, short state)
{
  _TDispID _dispid(*this, OLETEXT("ksSetSpcDescription"), DISPID(23));
  TAutoArgs<3> _args;
  _args[1] = index /*[VT_I4:0]*/;
  _args[2] = param /*[VT_DISPATCH:0]*/;
  _args[3] = state /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksAddSpcDescription(LPDISPATCH param)
{
  _TDispID _dispid(*this, OLETEXT("ksAddSpcDescription"), DISPID(24));
  TAutoArgs<1> _args;
  _args[1] = param /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksDeleteSpcDescription(long index)
{
  _TDispID _dispid(*this, OLETEXT("ksDeleteSpcDescription"), DISPID(25));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpecificationDispT<T>::D3SpcIncludePart(LPDISPATCH part, TOLEBOOL fillTexts)
{
  _TDispID _dispid(*this, OLETEXT("D3SpcIncludePart"), DISPID(26));
  TAutoArgs<2> _args;
  _args[1] = part /*[VT_DISPATCH:0]*/;
  _args[2] = fillTexts /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::D3GetSpcObjForGeomWithLimit(BSTR nameLib, long numb, LPDISPATCH part, 
                                                     short First, short section, double attrTypeNumb)
{
  _TDispID _dispid(*this, OLETEXT("D3GetSpcObjForGeomWithLimit"), DISPID(27));
  TAutoArgs<6> _args;
  _args[1] = nameLib /*[VT_BSTR:0]*/;
  _args[2] = numb /*[VT_I4:0]*/;
  _args[3] = part /*[VT_DISPATCH:0]*/;
  _args[4] = First /*[VT_I2:0]*/;
  _args[5] = section /*[VT_I2:0]*/;
  _args[6] = attrTypeNumb /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksSpecificationDispT<T>::ksGetWidthColumnSpc(long numColumn, TOLEBOOL cellOrText)
{
  _TDispID _dispid(*this, OLETEXT("ksGetWidthColumnSpc"), DISPID(28));
  TAutoArgs<2> _args;
  _args[1] = numColumn /*[VT_I4:0]*/;
  _args[2] = cellOrText /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksGetCurrentSpcObject()
{
  _TDispID _dispid(*this, OLETEXT("ksGetCurrentSpcObject"), DISPID(29));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksSetCurrentSpcObject(long spcObj, long index)
{
  _TDispID _dispid(*this, OLETEXT("ksSetCurrentSpcObject"), DISPID(30));
  TAutoArgs<2> _args;
  _args[1] = spcObj /*[VT_I4:0]*/;
  _args[2] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksSetTuningSpcStyleParam(long index, LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksSetTuningSpcStyleParam"), DISPID(31));
  TAutoArgs<2> _args;
  _args[1] = index /*[VT_I4:0]*/;
  _args[2] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksGetTuningSpcStyleParam(long index, LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksGetTuningSpcStyleParam"), DISPID(32));
  TAutoArgs<2> _args;
  _args[1] = index /*[VT_I4:0]*/;
  _args[2] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksGetSpcObjGeometry(long spcObj)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSpcObjGeometry"), DISPID(33));
  TAutoArgs<1> _args;
  _args[1] = spcObj /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSpecificationDispT<T>::D3GetSpcObjGeometry(long spcObj)
{
  _TDispID _dispid(*this, OLETEXT("D3GetSpcObjGeometry"), DISPID(34));
  TAutoArgs<1> _args;
  _args[1] = spcObj /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSpecificationDispT<T>::ksGetSpcObjectColumnTextEx(long spcObj, long columnType, long ispoln, 
                                                    long block)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSpcObjectColumnTextEx"), DISPID(35));
  TAutoArgs<4> _args;
  _args[1] = spcObj /*[VT_I4:0]*/;
  _args[2] = columnType /*[VT_I4:0]*/;
  _args[3] = ispoln /*[VT_I4:0]*/;
  _args[4] = block /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksSetSpcObjectColumnTextEx(long columnType, long ispoln, long block, 
                                                    LPDISPATCH arr)
{
  _TDispID _dispid(*this, OLETEXT("ksSetSpcObjectColumnTextEx"), DISPID(36));
  TAutoArgs<4> _args;
  _args[1] = columnType /*[VT_I4:0]*/;
  _args[2] = ispoln /*[VT_I4:0]*/;
  _args[3] = block /*[VT_I4:0]*/;
  _args[4] = arr /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::SpcObjectNotifyPtr __fastcall
ksSpecificationDispT<T>::GetSpcObjectNotify(long objType)
{
  _TDispID _dispid(*this, OLETEXT("GetSpcObjectNotify"), DISPID(37));
  TAutoArgs<1> _args;
  _args[1] = objType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return Kompas6api5_tlb::SpcObjectNotifyPtr( (LPUNKNOWN) /*[VT_UNKNOWN:1]*/_args.GetRetVariant(), false );
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksGetSpcObjGeometryEx(long spcObj, long geomMode)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSpcObjGeometryEx"), DISPID(38));
  TAutoArgs<2> _args;
  _args[1] = spcObj /*[VT_I4:0]*/;
  _args[2] = geomMode /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpecificationDispT<T>::ksSetSpcObjectColumnTextAlign(long spcObj, long columnNumber, 
                                                       long lineIndex, long align)
{
  _TDispID _dispid(*this, OLETEXT("ksSetSpcObjectColumnTextAlign"), DISPID(39));
  TAutoArgs<4> _args;
  _args[1] = spcObj /*[VT_I4:0]*/;
  _args[2] = columnNumber /*[VT_I4:0]*/;
  _args[3] = lineIndex /*[VT_I4:0]*/;
  _args[4] = align /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSpecificationDispT<T>::ksGetSpcObjectColumnTextAlign(long spcObj, long columnNumber, 
                                                       long lineIndex)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSpcObjectColumnTextAlign"), DISPID(40));
  TAutoArgs<3> _args;
  _args[1] = spcObj /*[VT_I4:0]*/;
  _args[2] = columnNumber /*[VT_I4:0]*/;
  _args[3] = lineIndex /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksSpecificationDispT<T>::ksGetSpcObjectAttributeNumber(long spcObj)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSpcObjectAttributeNumber"), DISPID(41));
  TAutoArgs<1> _args;
  _args[1] = spcObj /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpecificationDispT<T>::ksSetSpcObjectAttributeNumber(long spcObj, double attrNumber)
{
  _TDispID _dispid(*this, OLETEXT("ksSetSpcObjectAttributeNumber"), DISPID(42));
  TAutoArgs<2> _args;
  _args[1] = spcObj /*[VT_I4:0]*/;
  _args[2] = attrNumber /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksSpecificationDispT<T>::ksGetSpcObjectSummaryCount(long spcObj, long ispoln, long blockNumber)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSpcObjectSummaryCount"), DISPID(43));
  TAutoArgs<3> _args;
  _args[1] = spcObj /*[VT_I4:0]*/;
  _args[2] = ispoln /*[VT_I4:0]*/;
  _args[3] = blockNumber /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpecificationDispT<T>::ksSetSpcObjectMaterial(long spcObj, BSTR material, double density)
{
  _TDispID _dispid(*this, OLETEXT("ksSetSpcObjectMaterial"), DISPID(44));
  TAutoArgs<3> _args;
  _args[1] = spcObj /*[VT_I4:0]*/;
  _args[2] = material /*[VT_BSTR:0]*/;
  _args[3] = density /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksSpecificationDispT<T>::ksGetSpcPerformanceName(long index, long ispoln, long block)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSpcPerformanceName"), DISPID(45));
  TAutoArgs<3> _args;
  _args[1] = index /*[VT_I4:0]*/;
  _args[2] = ispoln /*[VT_I4:0]*/;
  _args[3] = block /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpecificationDispT<T>::ksSetSpcPerformanceName(long index, long ispoln, long block, BSTR name)
{
  _TDispID _dispid(*this, OLETEXT("ksSetSpcPerformanceName"), DISPID(46));
  TAutoArgs<4> _args;
  _args[1] = index /*[VT_I4:0]*/;
  _args[2] = ispoln /*[VT_I4:0]*/;
  _args[3] = block /*[VT_I4:0]*/;
  _args[4] = name /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSpecificationDispT<T>::ksSpcDocLinksClear(long doc)
{
  _TDispID _dispid(*this, OLETEXT("ksSpcDocLinksClear"), DISPID(47));
  TAutoArgs<1> _args;
  _args[1] = doc /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksDocumentTxt
// Flags:     (4096) Dispatchable
// GUID:      {74D745F1-9A3A-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksDocumentTxtDispT<T>::set_reference(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("reference"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksDocumentTxtDispT<T>::get_reference()
{
  _TDispID _dispid(*this, OLETEXT("reference"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocumentTxtDispT<T>::GetStamp()
{
  _TDispID _dispid(*this, OLETEXT("GetStamp"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocumentTxtDispT<T>::ksCloseDocument()
{
  _TDispID _dispid(*this, OLETEXT("ksCloseDocument"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocumentTxtDispT<T>::ksGetTxtDocumentPagesCount()
{
  _TDispID _dispid(*this, OLETEXT("ksGetTxtDocumentPagesCount"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocumentTxtDispT<T>::ksSaveDocument(BSTR fileName)
{
  _TDispID _dispid(*this, OLETEXT("ksSaveDocument"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocumentTxtDispT<T>::ksCreateDocument(LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("ksCreateDocument"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocumentTxtDispT<T>::ksOpenDocument(BSTR nameDoc, short regim)
{
  _TDispID _dispid(*this, OLETEXT("ksOpenDocument"), DISPID(7));
  TAutoArgs<2> _args;
  _args[1] = nameDoc /*[VT_BSTR:0]*/;
  _args[2] = regim /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocumentTxtDispT<T>::SaveAsToRasterFormat(BSTR fileName, LPDISPATCH par)
{
  _TDispID _dispid(*this, OLETEXT("SaveAsToRasterFormat"), DISPID(8));
  TAutoArgs<2> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = par /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocumentTxtDispT<T>::RasterFormatParam()
{
  _TDispID _dispid(*this, OLETEXT("RasterFormatParam"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocumentTxtDispT<T>::SaveAsToUncompressedRasterFormat(BSTR fileName, LPDISPATCH rasterPar)
{
  _TDispID _dispid(*this, OLETEXT("SaveAsToUncompressedRasterFormat"), DISPID(10));
  TAutoArgs<2> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = rasterPar /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocumentTxtDispT<T>::ksGetObjParam(long ref, LPDISPATCH param, long parType/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("ksGetObjParam"), DISPID(11));
  TAutoArgs<3> _args;
  _args[1] = ref /*[VT_I4:0]*/;
  _args[2] = param /*[VT_DISPATCH:0]*/;
  _args[3] = parType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocumentTxtDispT<T>::ksSetObjParam(long ref, LPDISPATCH param, long parType/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("ksSetObjParam"), DISPID(12));
  TAutoArgs<3> _args;
  _args[1] = ref /*[VT_I4:0]*/;
  _args[2] = param /*[VT_DISPATCH:0]*/;
  _args[3] = parType /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDocumentTxtDispT<T>::ksSaveDocumentEx(BSTR fileName, long SaveMode)
{
  _TDispID _dispid(*this, OLETEXT("ksSaveDocumentEx"), DISPID(13));
  TAutoArgs<2> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  _args[2] = SaveMode /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDocumentTxtDispT<T>::GetStampEx(long SheetNumb)
{
  _TDispID _dispid(*this, OLETEXT("GetStampEx"), DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = SheetNumb /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDocumentTxtDispT<T>::ksGetDocumentPagesCount()
{
  _TDispID _dispid(*this, OLETEXT("ksGetDocumentPagesCount"), DISPID(15));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksAttributeTypeParam
// Flags:     (4096) Dispatchable
// GUID:      {CC26DA61-9B22-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksAttributeTypeParamDispT<T>::set_key1(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("key1"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksAttributeTypeParamDispT<T>::get_key1()
{
  _TDispID _dispid(*this, OLETEXT("key1"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAttributeTypeParamDispT<T>::set_key2(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("key2"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksAttributeTypeParamDispT<T>::get_key2()
{
  _TDispID _dispid(*this, OLETEXT("key2"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAttributeTypeParamDispT<T>::set_key3(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("key3"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksAttributeTypeParamDispT<T>::get_key3()
{
  _TDispID _dispid(*this, OLETEXT("key3"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAttributeTypeParamDispT<T>::set_key4(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("key4"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksAttributeTypeParamDispT<T>::get_key4()
{
  _TDispID _dispid(*this, OLETEXT("key4"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAttributeTypeParamDispT<T>::set_rowsCount(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("rowsCount"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksAttributeTypeParamDispT<T>::get_rowsCount()
{
  _TDispID _dispid(*this, OLETEXT("rowsCount"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAttributeTypeParamDispT<T>::set_header(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("header"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksAttributeTypeParamDispT<T>::get_header()
{
  _TDispID _dispid(*this, OLETEXT("header"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAttributeTypeParamDispT<T>::set_flagVisible(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("flagVisible"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksAttributeTypeParamDispT<T>::get_flagVisible()
{
  _TDispID _dispid(*this, OLETEXT("flagVisible"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAttributeTypeParamDispT<T>::set_password(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("password"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksAttributeTypeParamDispT<T>::get_password()
{
  _TDispID _dispid(*this, OLETEXT("password"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksAttributeTypeParamDispT<T>::GetColumns()
{
  _TDispID _dispid(*this, OLETEXT("GetColumns"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksAttributeTypeParamDispT<T>::SetColumns(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetColumns"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksAttributeTypeParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksColumnInfoParam
// Flags:     (4096) Dispatchable
// GUID:      {CE0D05E1-9B2A-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksColumnInfoParamDispT<T>::set_type(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksColumnInfoParamDispT<T>::get_type()
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksColumnInfoParamDispT<T>::set_header(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("header"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksColumnInfoParamDispT<T>::get_header()
{
  _TDispID _dispid(*this, OLETEXT("header"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksColumnInfoParamDispT<T>::set_key(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("key"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksColumnInfoParamDispT<T>::get_key()
{
  _TDispID _dispid(*this, OLETEXT("key"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksColumnInfoParamDispT<T>::set_def(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("def"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksColumnInfoParamDispT<T>::get_def()
{
  _TDispID _dispid(*this, OLETEXT("def"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksColumnInfoParamDispT<T>::set_flagEnum(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("flagEnum"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksColumnInfoParamDispT<T>::get_flagEnum()
{
  _TDispID _dispid(*this, OLETEXT("flagEnum"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksColumnInfoParamDispT<T>::GetFieldEnum()
{
  _TDispID _dispid(*this, OLETEXT("GetFieldEnum"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksColumnInfoParamDispT<T>::SetFieldEnum(LPDISPATCH fieldEnum)
{
  _TDispID _dispid(*this, OLETEXT("SetFieldEnum"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = fieldEnum /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksColumnInfoParamDispT<T>::GetColumns()
{
  _TDispID _dispid(*this, OLETEXT("GetColumns"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksColumnInfoParamDispT<T>::SetColumns(LPDISPATCH fieldEnum)
{
  _TDispID _dispid(*this, OLETEXT("SetColumns"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = fieldEnum /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksColumnInfoParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksAttributeParam
// Flags:     (4096) Dispatchable
// GUID:      {CE0D05E4-9B2A-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksAttributeParamDispT<T>::set_key1(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("key1"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksAttributeParamDispT<T>::get_key1()
{
  _TDispID _dispid(*this, OLETEXT("key1"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAttributeParamDispT<T>::set_key2(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("key2"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksAttributeParamDispT<T>::get_key2()
{
  _TDispID _dispid(*this, OLETEXT("key2"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAttributeParamDispT<T>::set_key3(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("key3"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksAttributeParamDispT<T>::get_key3()
{
  _TDispID _dispid(*this, OLETEXT("key3"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAttributeParamDispT<T>::set_key4(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("key4"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksAttributeParamDispT<T>::get_key4()
{
  _TDispID _dispid(*this, OLETEXT("key4"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAttributeParamDispT<T>::set_password(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("password"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksAttributeParamDispT<T>::get_password()
{
  _TDispID _dispid(*this, OLETEXT("password"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksAttributeParamDispT<T>::GetValues()
{
  _TDispID _dispid(*this, OLETEXT("GetValues"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksAttributeParamDispT<T>::SetValues(LPDISPATCH values)
{
  _TDispID _dispid(*this, OLETEXT("SetValues"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = values /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksAttributeParamDispT<T>::GetFlagVisible()
{
  _TDispID _dispid(*this, OLETEXT("GetFlagVisible"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksAttributeParamDispT<T>::SetFlagVisible(LPDISPATCH flagVisible)
{
  _TDispID _dispid(*this, OLETEXT("SetFlagVisible"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = flagVisible /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksAttributeParamDispT<T>::GetColumnKeys()
{
  _TDispID _dispid(*this, OLETEXT("GetColumnKeys"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksAttributeParamDispT<T>::SetColumnKeys(LPDISPATCH columnKeys)
{
  _TDispID _dispid(*this, OLETEXT("SetColumnKeys"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = columnKeys /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksAttributeParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(12));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksVariable
// Flags:     (4096) Dispatchable
// GUID:      {508A0CC1-9D74-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksVariableDispT<T>::set_value(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("value"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksVariableDispT<T>::get_value()
{
  _TDispID _dispid(*this, OLETEXT("value"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksVariableDispT<T>::set_note(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("note"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksVariableDispT<T>::get_note()
{
  _TDispID _dispid(*this, OLETEXT("note"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksVariableDispT<T>::set_Pseudonym(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("Pseudonym"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksVariableDispT<T>::get_Pseudonym()
{
  _TDispID _dispid(*this, OLETEXT("Pseudonym"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksVariableDispT<T>::set_Expression(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("Expression"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksVariableDispT<T>::get_Expression()
{
  _TDispID _dispid(*this, OLETEXT("Expression"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksVariableDispT<T>::set_external(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("external"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksVariableDispT<T>::get_external()
{
  _TDispID _dispid(*this, OLETEXT("external"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksVariableDispT<T>::set_Information(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("Information"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksVariableDispT<T>::get_Information()
{
  _TDispID _dispid(*this, OLETEXT("Information"), DISPID(12));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksVariableDispT<T>::get_name()
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksVariableDispT<T>::get_parameterNote()
{
  _TDispID _dispid(*this, OLETEXT("parameterNote"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksVariableDispT<T>::get_linkVarName()
{
  _TDispID _dispid(*this, OLETEXT("linkVarName"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksVariableDispT<T>::get_linkDocName()
{
  _TDispID _dispid(*this, OLETEXT("linkDocName"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksVariableDispT<T>::SetLink(BSTR doc, BSTR name)
{
  _TDispID _dispid(*this, OLETEXT("SetLink"), DISPID(10));
  TAutoArgs<2> _args;
  _args[1] = doc /*[VT_BSTR:0]*/;
  _args[2] = name /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksVariableDispT<T>::get_displayName()
{
  _TDispID _dispid(*this, OLETEXT("displayName"), DISPID(11));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksLibraryAttrTypeParam
// Flags:     (4096) Dispatchable
// GUID:      {FA93AA21-9B3D-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksLibraryAttrTypeParamDispT<T>::set_name(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksLibraryAttrTypeParamDispT<T>::get_name()
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksLibraryAttrTypeParamDispT<T>::set_typeId(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("typeId"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksLibraryAttrTypeParamDispT<T>::get_typeId()
{
  _TDispID _dispid(*this, OLETEXT("typeId"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksLibraryAttrTypeParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksAttributeObject
// Flags:     (4096) Dispatchable
// GUID:      {FA93AA24-9B3D-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> double __fastcall
ksAttributeObjectDispT<T>::ksCreateAttrType(LPDISPATCH attrType, BSTR libName)
{
  _TDispID _dispid(*this, OLETEXT("ksCreateAttrType"), DISPID(1));
  TAutoArgs<2> _args;
  _args[1] = attrType /*[VT_DISPATCH:0]*/;
  _args[2] = libName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksAttributeObjectDispT<T>::ksDeleteAttrType(double attrID, BSTR libName, BSTR password)
{
  _TDispID _dispid(*this, OLETEXT("ksDeleteAttrType"), DISPID(2));
  TAutoArgs<3> _args;
  _args[1] = attrID /*[VT_R8:0]*/;
  _args[2] = libName /*[VT_BSTR:0]*/;
  _args[3] = password /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksAttributeObjectDispT<T>::ksGetAttrType(double attrID, BSTR libName, LPDISPATCH attrType)
{
  _TDispID _dispid(*this, OLETEXT("ksGetAttrType"), DISPID(3));
  TAutoArgs<3> _args;
  _args[1] = attrID /*[VT_R8:0]*/;
  _args[2] = libName /*[VT_BSTR:0]*/;
  _args[3] = attrType /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksAttributeObjectDispT<T>::ksSetAttrType(double attrID, BSTR libName, LPDISPATCH attrType, 
                                         BSTR password)
{
  _TDispID _dispid(*this, OLETEXT("ksSetAttrType"), DISPID(4));
  TAutoArgs<4> _args;
  _args[1] = attrID /*[VT_R8:0]*/;
  _args[2] = libName /*[VT_BSTR:0]*/;
  _args[3] = attrType /*[VT_DISPATCH:0]*/;
  _args[4] = password /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksAttributeObjectDispT<T>::ksChoiceAttrTypes(BSTR libName)
{
  _TDispID _dispid(*this, OLETEXT("ksChoiceAttrTypes"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = libName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksAttributeObjectDispT<T>::ksCreateAttr(long pObj, LPDISPATCH attr, double attrID, BSTR libName)
{
  _TDispID _dispid(*this, OLETEXT("ksCreateAttr"), DISPID(6));
  TAutoArgs<4> _args;
  _args[1] = pObj /*[VT_I4:0]*/;
  _args[2] = attr /*[VT_DISPATCH:0]*/;
  _args[3] = attrID /*[VT_R8:0]*/;
  _args[4] = libName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksAttributeObjectDispT<T>::ksDeleteAttr(long pObj, long pAttr, BSTR password)
{
  _TDispID _dispid(*this, OLETEXT("ksDeleteAttr"), DISPID(7));
  TAutoArgs<3> _args;
  _args[1] = pObj /*[VT_I4:0]*/;
  _args[2] = pAttr /*[VT_I4:0]*/;
  _args[3] = password /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksAttributeObjectDispT<T>::ksGetAttrValue(long pAttr, long rowNumb, long columnNumb, 
                                          LPDISPATCH flagVisible, LPDISPATCH columnKeys, 
                                          LPDISPATCH value)
{
  _TDispID _dispid(*this, OLETEXT("ksGetAttrValue"), DISPID(8));
  TAutoArgs<6> _args;
  _args[1] = pAttr /*[VT_I4:0]*/;
  _args[2] = rowNumb /*[VT_I4:0]*/;
  _args[3] = columnNumb /*[VT_I4:0]*/;
  _args[4] = flagVisible /*[VT_DISPATCH:0]*/;
  _args[5] = columnKeys /*[VT_DISPATCH:0]*/;
  _args[6] = value /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksAttributeObjectDispT<T>::ksSetAttrValue(long pAttr, long rowNumb, long columnNumb, 
                                          LPDISPATCH flagVisible, LPDISPATCH columnKeys, 
                                          LPDISPATCH value, BSTR password)
{
  _TDispID _dispid(*this, OLETEXT("ksSetAttrValue"), DISPID(9));
  TAutoArgs<7> _args;
  _args[1] = pAttr /*[VT_I4:0]*/;
  _args[2] = rowNumb /*[VT_I4:0]*/;
  _args[3] = columnNumb /*[VT_I4:0]*/;
  _args[4] = flagVisible /*[VT_DISPATCH:0]*/;
  _args[5] = columnKeys /*[VT_DISPATCH:0]*/;
  _args[6] = value /*[VT_DISPATCH:0]*/;
  _args[7] = password /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksAttributeObjectDispT<T>::ksGetAttrRow(long pAttr, long rowNumb, LPDISPATCH flagVisible, 
                                        LPDISPATCH columnKeys, LPDISPATCH value)
{
  _TDispID _dispid(*this, OLETEXT("ksGetAttrRow"), DISPID(10));
  TAutoArgs<5> _args;
  _args[1] = pAttr /*[VT_I4:0]*/;
  _args[2] = rowNumb /*[VT_I4:0]*/;
  _args[3] = flagVisible /*[VT_DISPATCH:0]*/;
  _args[4] = columnKeys /*[VT_DISPATCH:0]*/;
  _args[5] = value /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksAttributeObjectDispT<T>::ksSetAttrRow(long pAttr, long rowNumb, LPDISPATCH flagVisible, 
                                        LPDISPATCH columnKeys, LPDISPATCH value, BSTR password)
{
  _TDispID _dispid(*this, OLETEXT("ksSetAttrRow"), DISPID(11));
  TAutoArgs<6> _args;
  _args[1] = pAttr /*[VT_I4:0]*/;
  _args[2] = rowNumb /*[VT_I4:0]*/;
  _args[3] = flagVisible /*[VT_DISPATCH:0]*/;
  _args[4] = columnKeys /*[VT_DISPATCH:0]*/;
  _args[5] = value /*[VT_DISPATCH:0]*/;
  _args[6] = password /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksAttributeObjectDispT<T>::ksAddAttrRow(long pAttr, long rowNumb, LPDISPATCH flagVisible, 
                                        LPDISPATCH value, BSTR password)
{
  _TDispID _dispid(*this, OLETEXT("ksAddAttrRow"), DISPID(12));
  TAutoArgs<5> _args;
  _args[1] = pAttr /*[VT_I4:0]*/;
  _args[2] = rowNumb /*[VT_I4:0]*/;
  _args[3] = flagVisible /*[VT_DISPATCH:0]*/;
  _args[4] = value /*[VT_DISPATCH:0]*/;
  _args[5] = password /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksAttributeObjectDispT<T>::ksDeleteAttrRow(long pAttr, long rowNumb, BSTR password)
{
  _TDispID _dispid(*this, OLETEXT("ksDeleteAttrRow"), DISPID(13));
  TAutoArgs<3> _args;
  _args[1] = pAttr /*[VT_I4:0]*/;
  _args[2] = rowNumb /*[VT_I4:0]*/;
  _args[3] = password /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksAttributeObjectDispT<T>::ksGetSizeAttrValue(long pAttr, long columnNumb, long* count)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSizeAttrValue"), DISPID(14));
  TAutoArgs<3> _args;
  _args[1] = pAttr /*[VT_I4:0]*/;
  _args[2] = columnNumb /*[VT_I4:0]*/;
  _args[3] = count /*[VT_I4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksAttributeObjectDispT<T>::ksGetSizeAttrRow(long pAttr, long* count)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSizeAttrRow"), DISPID(15));
  TAutoArgs<2> _args;
  _args[1] = pAttr /*[VT_I4:0]*/;
  _args[2] = count /*[VT_I4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksAttributeObjectDispT<T>::ksGetAttrKeysInfo(long pAttr, long* key1, long* key2, long* key3, 
                                             long* key4, double* numb)
{
  _TDispID _dispid(*this, OLETEXT("ksGetAttrKeysInfo"), DISPID(16));
  TAutoArgs<6> _args;
  _args[1] = pAttr /*[VT_I4:0]*/;
  _args[2] = key1 /*[VT_I4:1]*/;
  _args[3] = key2 /*[VT_I4:1]*/;
  _args[4] = key3 /*[VT_I4:1]*/;
  _args[5] = key4 /*[VT_I4:1]*/;
  _args[6] = numb /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksAttributeObjectDispT<T>::ksGetAttrColumnInfo(long pAttr, long columnNumb, LPDISPATCH columnInfo)
{
  _TDispID _dispid(*this, OLETEXT("ksGetAttrColumnInfo"), DISPID(17));
  TAutoArgs<3> _args;
  _args[1] = pAttr /*[VT_I4:0]*/;
  _args[2] = columnNumb /*[VT_I4:0]*/;
  _args[3] = columnInfo /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksAttributeObjectDispT<T>::ksGetAttrTabInfo(long pAttr, long* rowsCount, long* columnsCount)
{
  _TDispID _dispid(*this, OLETEXT("ksGetAttrTabInfo"), DISPID(18));
  TAutoArgs<3> _args;
  _args[1] = pAttr /*[VT_I4:0]*/;
  _args[2] = rowsCount /*[VT_I4:1]*/;
  _args[3] = columnsCount /*[VT_I4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksAttributeObjectDispT<T>::ksViewEditAttr(long pAttr, long type, BSTR password)
{
  _TDispID _dispid(*this, OLETEXT("ksViewEditAttr"), DISPID(19));
  TAutoArgs<3> _args;
  _args[1] = pAttr /*[VT_I4:0]*/;
  _args[2] = type /*[VT_I4:0]*/;
  _args[3] = password /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksAttributeObjectDispT<T>::ksViewEditAttrType(BSTR libName, long type, double attrID, BSTR password)
{
  _TDispID _dispid(*this, OLETEXT("ksViewEditAttrType"), DISPID(20));
  TAutoArgs<4> _args;
  _args[1] = libName /*[VT_BSTR:0]*/;
  _args[2] = type /*[VT_I4:0]*/;
  _args[3] = attrID /*[VT_R8:0]*/;
  _args[4] = password /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksAttributeObjectDispT<T>::ksChoiceAttr(long pObj)
{
  _TDispID _dispid(*this, OLETEXT("ksChoiceAttr"), DISPID(21));
  TAutoArgs<1> _args;
  _args[1] = pObj /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksAttributeObjectDispT<T>::ksGetLibraryAttrTypesArray(BSTR libName)
{
  _TDispID _dispid(*this, OLETEXT("ksGetLibraryAttrTypesArray"), DISPID(22));
  TAutoArgs<1> _args;
  _args[1] = libName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksAttribute3DPtr __fastcall
ksAttributeObjectDispT<T>::ksCreateAttr3D(LPDISPATCH pObj, LPDISPATCH attr, double attrID, 
                                          BSTR libName)
{
  _TDispID _dispid(*this, OLETEXT("ksCreateAttr3D"), DISPID(23));
  TAutoArgs<4> _args;
  _args[1] = pObj /*[VT_DISPATCH:0]*/;
  _args[2] = attr /*[VT_DISPATCH:0]*/;
  _args[3] = attrID /*[VT_R8:0]*/;
  _args[4] = libName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksAttribute3D* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> long __fastcall
ksAttributeObjectDispT<T>::ksDeleteAttr3D(LPDISPATCH pObj, Kompas6api5_tlb::ksAttribute3DPtr pAttr, 
                                          BSTR password)
{
  _TDispID _dispid(*this, OLETEXT("ksDeleteAttr3D"), DISPID(24));
  TAutoArgs<3> _args;
  _args[1] = pObj /*[VT_DISPATCH:0]*/;
  _args[2] = (LPDISPATCH)(Kompas6api5_tlb::ksAttribute3D*)pAttr /*[VT_USERDEFINED:1]*/;
  _args[3] = password /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksAttribute3DPtr __fastcall
ksAttributeObjectDispT<T>::ksChoiceAttr3D(LPDISPATCH pObj)
{
  _TDispID _dispid(*this, OLETEXT("ksChoiceAttr3D"), DISPID(25));
  TAutoArgs<1> _args;
  _args[1] = pObj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksAttribute3D* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksAttribute3DPtr __fastcall
ksAttributeObjectDispT<T>::ksCreateAttr3DEx(LPDISPATCH pObj, LPDISPATCH pSourcePart, LPDISPATCH attr
                                            , double attrID, BSTR libName)
{
  _TDispID _dispid(*this, OLETEXT("ksCreateAttr3DEx"), DISPID(26));
  TAutoArgs<5> _args;
  _args[1] = pObj /*[VT_DISPATCH:0]*/;
  _args[2] = pSourcePart /*[VT_DISPATCH:0]*/;
  _args[3] = attr /*[VT_DISPATCH:0]*/;
  _args[4] = attrID /*[VT_R8:0]*/;
  _args[5] = libName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksAttribute3D* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> long __fastcall
ksAttributeObjectDispT<T>::ksGetSizeAttrValueW(long pAttr, long columnNumb, long* count)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSizeAttrValueW"), DISPID(27));
  TAutoArgs<3> _args;
  _args[1] = pAttr /*[VT_I4:0]*/;
  _args[2] = columnNumb /*[VT_I4:0]*/;
  _args[3] = count /*[VT_I4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksAttributeObjectDispT<T>::ksGetSizeAttrRowW(long pAttr, long* count)
{
  _TDispID _dispid(*this, OLETEXT("ksGetSizeAttrRowW"), DISPID(28));
  TAutoArgs<2> _args;
  _args[1] = pAttr /*[VT_I4:0]*/;
  _args[2] = count /*[VT_I4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksRequestInfo3D
// Flags:     (4096) Dispatchable
// GUID:      {E9807824-9D55-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksRequestInfo3DDispT<T>::set_prompt(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("prompt"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksRequestInfo3DDispT<T>::get_prompt()
{
  _TDispID _dispid(*this, OLETEXT("prompt"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRequestInfo3DDispT<T>::set_title(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("title"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksRequestInfo3DDispT<T>::get_title()
{
  _TDispID _dispid(*this, OLETEXT("title"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRequestInfo3DDispT<T>::set_cursorName(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("cursorName"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksRequestInfo3DDispT<T>::get_cursorName()
{
  _TDispID _dispid(*this, OLETEXT("cursorName"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRequestInfo3DDispT<T>::set_commandsString(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("commandsString"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksRequestInfo3DDispT<T>::get_commandsString()
{
  _TDispID _dispid(*this, OLETEXT("commandsString"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRequestInfo3DDispT<T>::set_cursorId(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("cursorId"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksRequestInfo3DDispT<T>::get_cursorId()
{
  _TDispID _dispid(*this, OLETEXT("cursorId"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRequestInfo3DDispT<T>::set_menuId(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("menuId"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksRequestInfo3DDispT<T>::get_menuId()
{
  _TDispID _dispid(*this, OLETEXT("menuId"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRequestInfo3DDispT<T>::set_DynamicFiltering(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("DynamicFiltering"), DISPID(20));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksRequestInfo3DDispT<T>::get_DynamicFiltering()
{
  _TDispID _dispid(*this, OLETEXT("DynamicFiltering"), DISPID(20));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksRequestInfo3DDispT<T>::GetFilterCallBack()
{
  _TDispID _dispid(*this, OLETEXT("GetFilterCallBack"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksRequestInfo3DDispT<T>::GetCallBack()
{
  _TDispID _dispid(*this, OLETEXT("GetCallBack"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRequestInfo3DDispT<T>::SetFilterCallBack(BSTR methodName, long hInst, LPDISPATCH dispatchOCX)
{
  _TDispID _dispid(*this, OLETEXT("SetFilterCallBack"), DISPID(9));
  TAutoArgs<3> _args;
  _args[1] = methodName /*[VT_BSTR:0]*/;
  _args[2] = hInst /*[VT_I4:0]*/;
  _args[3] = dispatchOCX /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRequestInfo3DDispT<T>::SetCallBack(BSTR methodName, long hInst, LPDISPATCH dispatchOCX)
{
  _TDispID _dispid(*this, OLETEXT("SetCallBack"), DISPID(10));
  TAutoArgs<3> _args;
  _args[1] = methodName /*[VT_BSTR:0]*/;
  _args[2] = hInst /*[VT_I4:0]*/;
  _args[3] = dispatchOCX /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksRequestInfo3DDispT<T>::GetPlacement()
{
  _TDispID _dispid(*this, OLETEXT("GetPlacement"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksRequestInfo3DDispT<T>::GetEntityCollection()
{
  _TDispID _dispid(*this, OLETEXT("GetEntityCollection"), DISPID(12));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksRequestInfo3DDispT<T>::GetCurrentCommand()
{
  _TDispID _dispid(*this, OLETEXT("GetCurrentCommand"), DISPID(13));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksRequestInfo3DDispT<T>::GetMateConstraintCollection()
{
  _TDispID _dispid(*this, OLETEXT("GetMateConstraintCollection"), DISPID(14));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksRequestInfo3DDispT<T>::GetIPhantom()
{
  _TDispID _dispid(*this, OLETEXT("GetIPhantom"), DISPID(15));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRequestInfo3DDispT<T>::CreatePhantom()
{
  _TDispID _dispid(*this, OLETEXT("CreatePhantom"), DISPID(16));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPUNKNOWN __fastcall
ksRequestInfo3DDispT<T>::GetProcessParam()
{
  _TDispID _dispid(*this, OLETEXT("GetProcessParam"), DISPID(17));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRequestInfo3DDispT<T>::SetProcessParam(LPUNKNOWN param)
{
  _TDispID _dispid(*this, OLETEXT("SetProcessParam"), DISPID(18));
  TAutoArgs<1> _args;
  _args[1] = param /*[VT_UNKNOWN:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksRequestInfo3DDispT<T>::GetCallBackFeature()
{
  _TDispID _dispid(*this, OLETEXT("GetCallBackFeature"), DISPID(19));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksMateConstraint
// Flags:     (4096) Dispatchable
// GUID:      {508A0CC4-9D74-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> void __fastcall
ksMateConstraintDispT<T>::set_constraintType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("constraintType"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksMateConstraintDispT<T>::get_constraintType()
{
  _TDispID _dispid(*this, OLETEXT("constraintType"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMateConstraintDispT<T>::set_direction(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("direction"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksMateConstraintDispT<T>::get_direction()
{
  _TDispID _dispid(*this, OLETEXT("direction"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMateConstraintDispT<T>::set_fixed(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("fixed"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksMateConstraintDispT<T>::get_fixed()
{
  _TDispID _dispid(*this, OLETEXT("fixed"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMateConstraintDispT<T>::set_distance(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("distance"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksMateConstraintDispT<T>::get_distance()
{
  _TDispID _dispid(*this, OLETEXT("distance"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMateConstraintDispT<T>::Create()
{
  _TDispID _dispid(*this, OLETEXT("Create"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMateConstraintDispT<T>::GetBaseObj(short number)
{
  _TDispID _dispid(*this, OLETEXT("GetBaseObj"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = number /*[VT_I2:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMateConstraintDispT<T>::SetBaseObj(short number, LPDISPATCH obj)
{
  _TDispID _dispid(*this, OLETEXT("SetBaseObj"), DISPID(7));
  TAutoArgs<2> _args;
  _args[1] = number /*[VT_I2:0]*/;
  _args[2] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMateConstraintDispT<T>::GetFeature()
{
  _TDispID _dispid(*this, OLETEXT("GetFeature"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksMateConstraintDispT<T>::GetEntityParams(short number, TVariant* params)
{
  _TDispID _dispid(*this, OLETEXT("GetEntityParams"), DISPID(9));
  TAutoArgs<2> _args;
  _args[1] = number /*[VT_I2:0]*/;
  _args[2] = params /*[VT_VARIANT:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksDefaultObject
// Flags:     (4096) Dispatchable
// GUID:      {508A0CC7-9D74-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> LPDISPATCH __fastcall
ksDefaultObjectDispT<T>::GetSurface()
{
  _TDispID _dispid(*this, OLETEXT("GetSurface"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDefaultObjectDispT<T>::GetCurve3D()
{
  _TDispID _dispid(*this, OLETEXT("GetCurve3D"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksModelLibrary
// Flags:     (4096) Dispatchable
// GUID:      {111CEFE4-A0A7-11D6-95CE-00C0262D30E3}
// *********************************************************************//
template <class T> long __fastcall
ksModelLibraryDispT<T>::ModelLibraryOperation(BSTR libName, long type)
{
  _TDispID _dispid(*this, OLETEXT("ModelLibraryOperation"), DISPID(1));
  TAutoArgs<2> _args;
  _args[1] = libName /*[VT_BSTR:0]*/;
  _args[2] = type /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksModelLibraryDispT<T>::ChoiceModelFromLib(BSTR libFile, long* type)
{
  _TDispID _dispid(*this, OLETEXT("ChoiceModelFromLib"), DISPID(2));
  TAutoArgs<2> _args;
  _args[1] = libFile /*[VT_BSTR:0]*/;
  _args[2] = type /*[VT_I4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksModelLibraryDispT<T>::ExistModelInLibrary(BSTR name)
{
  _TDispID _dispid(*this, OLETEXT("ExistModelInLibrary"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = name /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksModelLibraryDispT<T>::AddD3DocumentToLibrary(BSTR libName, BSTR fileName)
{
  _TDispID _dispid(*this, OLETEXT("AddD3DocumentToLibrary"), DISPID(4));
  TAutoArgs<2> _args;
  _args[1] = libName /*[VT_BSTR:0]*/;
  _args[2] = fileName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksModelLibraryDispT<T>::CheckModelLibrary(BSTR libName, TOLEBOOL possibleMessage)
{
  _TDispID _dispid(*this, OLETEXT("CheckModelLibrary"), DISPID(5));
  TAutoArgs<2> _args;
  _args[1] = libName /*[VT_BSTR:0]*/;
  _args[2] = possibleMessage /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksVariableCollection
// Flags:     (4096) Dispatchable
// GUID:      {03CEAC81-C0B8-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksVariableCollectionDispT<T>::refresh()
{
  _TDispID _dispid(*this, OLETEXT("refresh"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksVariableCollectionDispT<T>::GetCount()
{
  _TDispID _dispid(*this, OLETEXT("GetCount"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksVariableCollectionDispT<T>::First()
{
  _TDispID _dispid(*this, OLETEXT("First"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksVariableCollectionDispT<T>::Last()
{
  _TDispID _dispid(*this, OLETEXT("Last"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksVariableCollectionDispT<T>::Next()
{
  _TDispID _dispid(*this, OLETEXT("Next"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksVariableCollectionDispT<T>::Prev()
{
  _TDispID _dispid(*this, OLETEXT("Prev"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksVariableCollectionDispT<T>::GetByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetByIndex"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksVariableCollectionDispT<T>::GetByName(BSTR name, TOLEBOOL testFullName/*[def,opt]*/, 
                                        TOLEBOOL testIgnoreCase/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("GetByName"), DISPID(8));
  TAutoArgs<3> _args;
  _args[1] = name /*[VT_BSTR:0]*/;
  _args[2] = testFullName /*[VT_BOOL:0]*/;
  _args[3] = testIgnoreCase /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksVariableCollectionDispT<T>::AddNewVariable(BSTR name, double value, BSTR note)
{
  _TDispID _dispid(*this, OLETEXT("AddNewVariable"), DISPID(9));
  TAutoArgs<3> _args;
  _args[1] = name /*[VT_BSTR:0]*/;
  _args[2] = value /*[VT_R8:0]*/;
  _args[3] = note /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksVariableCollectionDispT<T>::RemoveVariable(BSTR name)
{
  _TDispID _dispid(*this, OLETEXT("RemoveVariable"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = name /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksMateConstraintCollection
// Flags:     (4096) Dispatchable
// GUID:      {03CEAC84-C0B8-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> long __fastcall
ksMateConstraintCollectionDispT<T>::GetCount()
{
  _TDispID _dispid(*this, OLETEXT("GetCount"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMateConstraintCollectionDispT<T>::First()
{
  _TDispID _dispid(*this, OLETEXT("First"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMateConstraintCollectionDispT<T>::Last()
{
  _TDispID _dispid(*this, OLETEXT("Last"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMateConstraintCollectionDispT<T>::Next()
{
  _TDispID _dispid(*this, OLETEXT("Next"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMateConstraintCollectionDispT<T>::Prev()
{
  _TDispID _dispid(*this, OLETEXT("Prev"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMateConstraintCollectionDispT<T>::GetByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetByIndex"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMateConstraintCollectionDispT<T>::AddMateConstraint(LPDISPATCH mate)
{
  _TDispID _dispid(*this, OLETEXT("AddMateConstraint"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = mate /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMateConstraintCollectionDispT<T>::RemoveMateConstraint(LPDISPATCH mate)
{
  _TDispID _dispid(*this, OLETEXT("RemoveMateConstraint"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = mate /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMateConstraintCollectionDispT<T>::Clear()
{
  _TDispID _dispid(*this, OLETEXT("Clear"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMateConstraintCollectionDispT<T>::refresh()
{
  _TDispID _dispid(*this, OLETEXT("refresh"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksMateConstraintCollectionDispT<T>::FindIt(LPDISPATCH entity)
{
  _TDispID _dispid(*this, OLETEXT("FindIt"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMateConstraintCollectionDispT<T>::GetSafeArrayByObj(LPDISPATCH obj, TVariant* pArray)
{
  _TDispID _dispid(*this, OLETEXT("GetSafeArrayByObj"), DISPID(12));
  TAutoArgs<2> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  _args[2] = pArray /*[VT_VARIANT:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksPartCollection
// Flags:     (4096) Dispatchable
// GUID:      {03CEAC87-C0B8-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksPartCollectionDispT<T>::refresh()
{
  _TDispID _dispid(*this, OLETEXT("refresh"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksPartCollectionDispT<T>::GetCount()
{
  _TDispID _dispid(*this, OLETEXT("GetCount"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPartCollectionDispT<T>::First()
{
  _TDispID _dispid(*this, OLETEXT("First"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPartCollectionDispT<T>::Last()
{
  _TDispID _dispid(*this, OLETEXT("Last"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPartCollectionDispT<T>::Next()
{
  _TDispID _dispid(*this, OLETEXT("Next"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPartCollectionDispT<T>::Prev()
{
  _TDispID _dispid(*this, OLETEXT("Prev"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPartCollectionDispT<T>::GetByName(BSTR name, TOLEBOOL testFullName/*[def,opt]*/, 
                                    TOLEBOOL testIgnoreCase/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("GetByName"), DISPID(7));
  TAutoArgs<3> _args;
  _args[1] = name /*[VT_BSTR:0]*/;
  _args[2] = testFullName /*[VT_BOOL:0]*/;
  _args[3] = testIgnoreCase /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPartCollectionDispT<T>::GetByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetByIndex"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartCollectionDispT<T>::Add(LPDISPATCH part)
{
  _TDispID _dispid(*this, OLETEXT("Add"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = part /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartCollectionDispT<T>::AddAt(LPDISPATCH part, long index)
{
  _TDispID _dispid(*this, OLETEXT("AddAt"), DISPID(10));
  TAutoArgs<2> _args;
  _args[1] = part /*[VT_DISPATCH:0]*/;
  _args[2] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartCollectionDispT<T>::AddBefore(LPDISPATCH part, LPDISPATCH base)
{
  _TDispID _dispid(*this, OLETEXT("AddBefore"), DISPID(11));
  TAutoArgs<2> _args;
  _args[1] = part /*[VT_DISPATCH:0]*/;
  _args[2] = base /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartCollectionDispT<T>::DetachByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("DetachByIndex"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartCollectionDispT<T>::DetachByBody(LPDISPATCH part)
{
  _TDispID _dispid(*this, OLETEXT("DetachByBody"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = part /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartCollectionDispT<T>::Clear()
{
  _TDispID _dispid(*this, OLETEXT("Clear"), DISPID(14));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPartCollectionDispT<T>::SetByIndex(LPDISPATCH part, long index)
{
  _TDispID _dispid(*this, OLETEXT("SetByIndex"), DISPID(15));
  TAutoArgs<2> _args;
  _args[1] = part /*[VT_DISPATCH:0]*/;
  _args[2] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksPartCollectionDispT<T>::FindIt(LPDISPATCH entity)
{
  _TDispID _dispid(*this, OLETEXT("FindIt"), DISPID(16));
  TAutoArgs<1> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksMeshPartArrayDefinition
// Flags:     (4096) Dispatchable
// GUID:      {E6E78D61-C0FA-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksMeshPartArrayDefinitionDispT<T>::set_angle1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angle1"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksMeshPartArrayDefinitionDispT<T>::get_angle1()
{
  _TDispID _dispid(*this, OLETEXT("angle1"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMeshPartArrayDefinitionDispT<T>::set_count1(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("count1"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksMeshPartArrayDefinitionDispT<T>::get_count1()
{
  _TDispID _dispid(*this, OLETEXT("count1"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMeshPartArrayDefinitionDispT<T>::set_step1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("step1"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksMeshPartArrayDefinitionDispT<T>::get_step1()
{
  _TDispID _dispid(*this, OLETEXT("step1"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMeshPartArrayDefinitionDispT<T>::set_factor1(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("factor1"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksMeshPartArrayDefinitionDispT<T>::get_factor1()
{
  _TDispID _dispid(*this, OLETEXT("factor1"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMeshPartArrayDefinitionDispT<T>::set_angle2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angle2"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksMeshPartArrayDefinitionDispT<T>::get_angle2()
{
  _TDispID _dispid(*this, OLETEXT("angle2"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMeshPartArrayDefinitionDispT<T>::set_count2(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("count2"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksMeshPartArrayDefinitionDispT<T>::get_count2()
{
  _TDispID _dispid(*this, OLETEXT("count2"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMeshPartArrayDefinitionDispT<T>::set_step2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("step2"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksMeshPartArrayDefinitionDispT<T>::get_step2()
{
  _TDispID _dispid(*this, OLETEXT("step2"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMeshPartArrayDefinitionDispT<T>::set_factor2(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("factor2"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksMeshPartArrayDefinitionDispT<T>::get_factor2()
{
  _TDispID _dispid(*this, OLETEXT("factor2"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMeshPartArrayDefinitionDispT<T>::set_insideFlag(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("insideFlag"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksMeshPartArrayDefinitionDispT<T>::get_insideFlag()
{
  _TDispID _dispid(*this, OLETEXT("insideFlag"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMeshPartArrayDefinitionDispT<T>::GetAxis1()
{
  _TDispID _dispid(*this, OLETEXT("GetAxis1"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMeshPartArrayDefinitionDispT<T>::SetAxis1(LPDISPATCH axis)
{
  _TDispID _dispid(*this, OLETEXT("SetAxis1"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = axis /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMeshPartArrayDefinitionDispT<T>::GetAxis2()
{
  _TDispID _dispid(*this, OLETEXT("GetAxis2"), DISPID(12));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMeshPartArrayDefinitionDispT<T>::SetAxis2(LPDISPATCH axis)
{
  _TDispID _dispid(*this, OLETEXT("SetAxis2"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = axis /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMeshPartArrayDefinitionDispT<T>::PartArray()
{
  _TDispID _dispid(*this, OLETEXT("PartArray"), DISPID(14));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMeshPartArrayDefinitionDispT<T>::GetCopyParamAlongAxis(TOLEBOOL firstAxis, double* angle, 
                                                         long* count, double* step, TOLEBOOL* factor)
{
  _TDispID _dispid(*this, OLETEXT("GetCopyParamAlongAxis"), DISPID(15));
  TAutoArgs<5> _args;
  _args[1] = firstAxis /*[VT_BOOL:0]*/;
  _args[2] = angle /*[VT_R8:1]*/;
  _args[3] = count /*[VT_I4:1]*/;
  _args[4] = step /*[VT_R8:1]*/;
  _args[5] = factor /*[VT_BOOL:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMeshPartArrayDefinitionDispT<T>::SetCopyParamAlongAxis(TOLEBOOL firstAxis, double angle, 
                                                         long count, double step, TOLEBOOL factor)
{
  _TDispID _dispid(*this, OLETEXT("SetCopyParamAlongAxis"), DISPID(16));
  TAutoArgs<5> _args;
  _args[1] = firstAxis /*[VT_BOOL:0]*/;
  _args[2] = angle /*[VT_R8:0]*/;
  _args[3] = count /*[VT_I4:0]*/;
  _args[4] = step /*[VT_R8:0]*/;
  _args[5] = factor /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMeshPartArrayDefinitionDispT<T>::DeletedCollection()
{
  _TDispID _dispid(*this, OLETEXT("DeletedCollection"), DISPID(17));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCircularPartArrayDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DDD05143-C180-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksCircularPartArrayDefinitionDispT<T>::set_count1(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("count1"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksCircularPartArrayDefinitionDispT<T>::get_count1()
{
  _TDispID _dispid(*this, OLETEXT("count1"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCircularPartArrayDefinitionDispT<T>::set_step1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("step1"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCircularPartArrayDefinitionDispT<T>::get_step1()
{
  _TDispID _dispid(*this, OLETEXT("step1"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCircularPartArrayDefinitionDispT<T>::set_factor1(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("factor1"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCircularPartArrayDefinitionDispT<T>::get_factor1()
{
  _TDispID _dispid(*this, OLETEXT("factor1"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCircularPartArrayDefinitionDispT<T>::set_count2(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("count2"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksCircularPartArrayDefinitionDispT<T>::get_count2()
{
  _TDispID _dispid(*this, OLETEXT("count2"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCircularPartArrayDefinitionDispT<T>::set_step2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("step2"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCircularPartArrayDefinitionDispT<T>::get_step2()
{
  _TDispID _dispid(*this, OLETEXT("step2"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCircularPartArrayDefinitionDispT<T>::set_factor2(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("factor2"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCircularPartArrayDefinitionDispT<T>::get_factor2()
{
  _TDispID _dispid(*this, OLETEXT("factor2"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCircularPartArrayDefinitionDispT<T>::set_inverce(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("inverce"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCircularPartArrayDefinitionDispT<T>::get_inverce()
{
  _TDispID _dispid(*this, OLETEXT("inverce"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCircularPartArrayDefinitionDispT<T>::set_keepAngle(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("keepAngle"), DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCircularPartArrayDefinitionDispT<T>::get_keepAngle()
{
  _TDispID _dispid(*this, OLETEXT("keepAngle"), DISPID(14));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCircularPartArrayDefinitionDispT<T>::PartArray()
{
  _TDispID _dispid(*this, OLETEXT("PartArray"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCircularPartArrayDefinitionDispT<T>::GetAxis()
{
  _TDispID _dispid(*this, OLETEXT("GetAxis"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCircularPartArrayDefinitionDispT<T>::SetAxis(LPDISPATCH axis)
{
  _TDispID _dispid(*this, OLETEXT("SetAxis"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = axis /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCircularPartArrayDefinitionDispT<T>::GetCopyParamAlongDir(long* count, double* step, 
                                                            TOLEBOOL* factor, TOLEBOOL dir)
{
  _TDispID _dispid(*this, OLETEXT("GetCopyParamAlongDir"), DISPID(11));
  TAutoArgs<4> _args;
  _args[1] = count /*[VT_I4:1]*/;
  _args[2] = step /*[VT_R8:1]*/;
  _args[3] = factor /*[VT_BOOL:1]*/;
  _args[4] = dir /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCircularPartArrayDefinitionDispT<T>::SetCopyParamAlongDir(long count, double step, TOLEBOOL factor
                                                            , TOLEBOOL dir)
{
  _TDispID _dispid(*this, OLETEXT("SetCopyParamAlongDir"), DISPID(12));
  TAutoArgs<4> _args;
  _args[1] = count /*[VT_I4:0]*/;
  _args[2] = step /*[VT_R8:0]*/;
  _args[3] = factor /*[VT_BOOL:0]*/;
  _args[4] = dir /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCircularPartArrayDefinitionDispT<T>::DeletedCollection()
{
  _TDispID _dispid(*this, OLETEXT("DeletedCollection"), DISPID(13));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCurvePartArrayDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DDD05146-C180-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksCurvePartArrayDefinitionDispT<T>::set_count(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("count"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksCurvePartArrayDefinitionDispT<T>::get_count()
{
  _TDispID _dispid(*this, OLETEXT("count"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCurvePartArrayDefinitionDispT<T>::set_step(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("step"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCurvePartArrayDefinitionDispT<T>::get_step()
{
  _TDispID _dispid(*this, OLETEXT("step"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCurvePartArrayDefinitionDispT<T>::set_factor(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("factor"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCurvePartArrayDefinitionDispT<T>::get_factor()
{
  _TDispID _dispid(*this, OLETEXT("factor"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCurvePartArrayDefinitionDispT<T>::set_keepAngle(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("keepAngle"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCurvePartArrayDefinitionDispT<T>::get_keepAngle()
{
  _TDispID _dispid(*this, OLETEXT("keepAngle"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCurvePartArrayDefinitionDispT<T>::set_fullCurve(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("fullCurve"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCurvePartArrayDefinitionDispT<T>::get_fullCurve()
{
  _TDispID _dispid(*this, OLETEXT("fullCurve"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCurvePartArrayDefinitionDispT<T>::set_sence(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("sence"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCurvePartArrayDefinitionDispT<T>::get_sence()
{
  _TDispID _dispid(*this, OLETEXT("sence"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCurvePartArrayDefinitionDispT<T>::PartArray()
{
  _TDispID _dispid(*this, OLETEXT("PartArray"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCurvePartArrayDefinitionDispT<T>::CurveArray()
{
  _TDispID _dispid(*this, OLETEXT("CurveArray"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCurvePartArrayDefinitionDispT<T>::DeletedCollection()
{
  _TDispID _dispid(*this, OLETEXT("DeletedCollection"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksDerivativePartArrayDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DDD05149-C180-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> LPDISPATCH __fastcall
ksDerivativePartArrayDefinitionDispT<T>::PartArray()
{
  _TDispID _dispid(*this, OLETEXT("PartArray"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDerivativePartArrayDefinitionDispT<T>::GetDeriv()
{
  _TDispID _dispid(*this, OLETEXT("GetDeriv"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDerivativePartArrayDefinitionDispT<T>::SetDeriv(LPDISPATCH deriv)
{
  _TDispID _dispid(*this, OLETEXT("SetDeriv"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = deriv /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksDerivativePartArrayDefinitionDispT<T>::DeletedCollection()
{
  _TDispID _dispid(*this, OLETEXT("DeletedCollection"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksAxis2PlanesDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB81-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksAxis2PlanesDefinitionDispT<T>::SetPlane(long number, LPDISPATCH plane)
{
  _TDispID _dispid(*this, OLETEXT("SetPlane"), DISPID(1));
  TAutoArgs<2> _args;
  _args[1] = number /*[VT_I4:0]*/;
  _args[2] = plane /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksAxis2PlanesDefinitionDispT<T>::GetPlane(long number)
{
  _TDispID _dispid(*this, OLETEXT("GetPlane"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = number /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksAxis2PlanesDefinitionDispT<T>::GetCurve3D()
{
  _TDispID _dispid(*this, OLETEXT("GetCurve3D"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksAxisOperationsDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB84-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksAxisOperationsDefinitionDispT<T>::SetOperation(LPDISPATCH plane)
{
  _TDispID _dispid(*this, OLETEXT("SetOperation"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = plane /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksAxisOperationsDefinitionDispT<T>::GetOperation()
{
  _TDispID _dispid(*this, OLETEXT("GetOperation"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksAxisOperationsDefinitionDispT<T>::GetCurve3D()
{
  _TDispID _dispid(*this, OLETEXT("GetCurve3D"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksAxis2PointsDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB87-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksAxis2PointsDefinitionDispT<T>::SetPoint(long number, LPDISPATCH point)
{
  _TDispID _dispid(*this, OLETEXT("SetPoint"), DISPID(1));
  TAutoArgs<2> _args;
  _args[1] = number /*[VT_I4:0]*/;
  _args[2] = point /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksAxis2PointsDefinitionDispT<T>::GetPoint(long number)
{
  _TDispID _dispid(*this, OLETEXT("GetPoint"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = number /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksAxis2PointsDefinitionDispT<T>::GetCurve3D()
{
  _TDispID _dispid(*this, OLETEXT("GetCurve3D"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksAxisEdgeDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB8A-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksAxisEdgeDefinitionDispT<T>::SetEdge(LPDISPATCH edge)
{
  _TDispID _dispid(*this, OLETEXT("SetEdge"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = edge /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksAxisEdgeDefinitionDispT<T>::GetEdge()
{
  _TDispID _dispid(*this, OLETEXT("GetEdge"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksAxisEdgeDefinitionDispT<T>::GetCurve3D()
{
  _TDispID _dispid(*this, OLETEXT("GetCurve3D"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksMeshCopyDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB8D-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksMeshCopyDefinitionDispT<T>::set_angle1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angle1"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksMeshCopyDefinitionDispT<T>::get_angle1()
{
  _TDispID _dispid(*this, OLETEXT("angle1"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMeshCopyDefinitionDispT<T>::set_count1(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("count1"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksMeshCopyDefinitionDispT<T>::get_count1()
{
  _TDispID _dispid(*this, OLETEXT("count1"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMeshCopyDefinitionDispT<T>::set_step1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("step1"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksMeshCopyDefinitionDispT<T>::get_step1()
{
  _TDispID _dispid(*this, OLETEXT("step1"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMeshCopyDefinitionDispT<T>::set_factor1(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("factor1"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksMeshCopyDefinitionDispT<T>::get_factor1()
{
  _TDispID _dispid(*this, OLETEXT("factor1"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMeshCopyDefinitionDispT<T>::set_angle2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angle2"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksMeshCopyDefinitionDispT<T>::get_angle2()
{
  _TDispID _dispid(*this, OLETEXT("angle2"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMeshCopyDefinitionDispT<T>::set_count2(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("count2"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksMeshCopyDefinitionDispT<T>::get_count2()
{
  _TDispID _dispid(*this, OLETEXT("count2"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMeshCopyDefinitionDispT<T>::set_step2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("step2"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksMeshCopyDefinitionDispT<T>::get_step2()
{
  _TDispID _dispid(*this, OLETEXT("step2"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMeshCopyDefinitionDispT<T>::set_factor2(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("factor2"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksMeshCopyDefinitionDispT<T>::get_factor2()
{
  _TDispID _dispid(*this, OLETEXT("factor2"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMeshCopyDefinitionDispT<T>::set_insideFlag(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("insideFlag"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksMeshCopyDefinitionDispT<T>::get_insideFlag()
{
  _TDispID _dispid(*this, OLETEXT("insideFlag"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMeshCopyDefinitionDispT<T>::set_geomArray(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("geomArray"), DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksMeshCopyDefinitionDispT<T>::get_geomArray()
{
  _TDispID _dispid(*this, OLETEXT("geomArray"), DISPID(14));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMeshCopyDefinitionDispT<T>::OperationArray()
{
  _TDispID _dispid(*this, OLETEXT("OperationArray"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMeshCopyDefinitionDispT<T>::GetCopyParamAlongAxis(TOLEBOOL firstAxis, double* angle, long* count, 
                                                    double* step, TOLEBOOL* factor)
{
  _TDispID _dispid(*this, OLETEXT("GetCopyParamAlongAxis"), DISPID(11));
  TAutoArgs<5> _args;
  _args[1] = firstAxis /*[VT_BOOL:0]*/;
  _args[2] = angle /*[VT_R8:1]*/;
  _args[3] = count /*[VT_I4:1]*/;
  _args[4] = step /*[VT_R8:1]*/;
  _args[5] = factor /*[VT_BOOL:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMeshCopyDefinitionDispT<T>::SetCopyParamAlongAxis(TOLEBOOL firstAxis, double angle, long count, 
                                                    double step, TOLEBOOL factor)
{
  _TDispID _dispid(*this, OLETEXT("SetCopyParamAlongAxis"), DISPID(12));
  TAutoArgs<5> _args;
  _args[1] = firstAxis /*[VT_BOOL:0]*/;
  _args[2] = angle /*[VT_R8:0]*/;
  _args[3] = count /*[VT_I4:0]*/;
  _args[4] = step /*[VT_R8:0]*/;
  _args[5] = factor /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMeshCopyDefinitionDispT<T>::DeletedCollection()
{
  _TDispID _dispid(*this, OLETEXT("DeletedCollection"), DISPID(13));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMeshCopyDefinitionDispT<T>::GetAxis1()
{
  _TDispID _dispid(*this, OLETEXT("GetAxis1"), DISPID(15));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMeshCopyDefinitionDispT<T>::SetAxis1(LPDISPATCH axis)
{
  _TDispID _dispid(*this, OLETEXT("SetAxis1"), DISPID(16));
  TAutoArgs<1> _args;
  _args[1] = axis /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMeshCopyDefinitionDispT<T>::GetAxis2()
{
  _TDispID _dispid(*this, OLETEXT("GetAxis2"), DISPID(17));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMeshCopyDefinitionDispT<T>::SetAxis2(LPDISPATCH axis)
{
  _TDispID _dispid(*this, OLETEXT("SetAxis2"), DISPID(18));
  TAutoArgs<1> _args;
  _args[1] = axis /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCircularCopyDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB90-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksCircularCopyDefinitionDispT<T>::set_count1(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("count1"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksCircularCopyDefinitionDispT<T>::get_count1()
{
  _TDispID _dispid(*this, OLETEXT("count1"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCircularCopyDefinitionDispT<T>::set_step1(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("step1"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCircularCopyDefinitionDispT<T>::get_step1()
{
  _TDispID _dispid(*this, OLETEXT("step1"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCircularCopyDefinitionDispT<T>::set_factor1(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("factor1"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCircularCopyDefinitionDispT<T>::get_factor1()
{
  _TDispID _dispid(*this, OLETEXT("factor1"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCircularCopyDefinitionDispT<T>::set_count2(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("count2"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksCircularCopyDefinitionDispT<T>::get_count2()
{
  _TDispID _dispid(*this, OLETEXT("count2"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCircularCopyDefinitionDispT<T>::set_step2(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("step2"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCircularCopyDefinitionDispT<T>::get_step2()
{
  _TDispID _dispid(*this, OLETEXT("step2"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCircularCopyDefinitionDispT<T>::set_factor2(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("factor2"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCircularCopyDefinitionDispT<T>::get_factor2()
{
  _TDispID _dispid(*this, OLETEXT("factor2"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCircularCopyDefinitionDispT<T>::set_inverce(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("inverce"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCircularCopyDefinitionDispT<T>::get_inverce()
{
  _TDispID _dispid(*this, OLETEXT("inverce"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCircularCopyDefinitionDispT<T>::set_geomArray(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("geomArray"), DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCircularCopyDefinitionDispT<T>::get_geomArray()
{
  _TDispID _dispid(*this, OLETEXT("geomArray"), DISPID(14));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCircularCopyDefinitionDispT<T>::GetOperationArray()
{
  _TDispID _dispid(*this, OLETEXT("GetOperationArray"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCircularCopyDefinitionDispT<T>::GetAxis()
{
  _TDispID _dispid(*this, OLETEXT("GetAxis"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCircularCopyDefinitionDispT<T>::SetAxis(LPDISPATCH axis)
{
  _TDispID _dispid(*this, OLETEXT("SetAxis"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = axis /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCircularCopyDefinitionDispT<T>::GetCopyParamAlongDir(long* count, double* step, TOLEBOOL* factor, 
                                                       TOLEBOOL dir)
{
  _TDispID _dispid(*this, OLETEXT("GetCopyParamAlongDir"), DISPID(11));
  TAutoArgs<4> _args;
  _args[1] = count /*[VT_I4:1]*/;
  _args[2] = step /*[VT_R8:1]*/;
  _args[3] = factor /*[VT_BOOL:1]*/;
  _args[4] = dir /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCircularCopyDefinitionDispT<T>::SetCopyParamAlongDir(long count, double step, TOLEBOOL factor, 
                                                       TOLEBOOL dir)
{
  _TDispID _dispid(*this, OLETEXT("SetCopyParamAlongDir"), DISPID(12));
  TAutoArgs<4> _args;
  _args[1] = count /*[VT_I4:0]*/;
  _args[2] = step /*[VT_R8:0]*/;
  _args[3] = factor /*[VT_BOOL:0]*/;
  _args[4] = dir /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCircularCopyDefinitionDispT<T>::DeletedCollection()
{
  _TDispID _dispid(*this, OLETEXT("DeletedCollection"), DISPID(13));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCurveCopyDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB93-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksCurveCopyDefinitionDispT<T>::set_count(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("count"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksCurveCopyDefinitionDispT<T>::get_count()
{
  _TDispID _dispid(*this, OLETEXT("count"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCurveCopyDefinitionDispT<T>::set_step(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("step"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCurveCopyDefinitionDispT<T>::get_step()
{
  _TDispID _dispid(*this, OLETEXT("step"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCurveCopyDefinitionDispT<T>::set_factor(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("factor"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCurveCopyDefinitionDispT<T>::get_factor()
{
  _TDispID _dispid(*this, OLETEXT("factor"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCurveCopyDefinitionDispT<T>::set_keepAngle(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("keepAngle"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCurveCopyDefinitionDispT<T>::get_keepAngle()
{
  _TDispID _dispid(*this, OLETEXT("keepAngle"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCurveCopyDefinitionDispT<T>::set_fullCurve(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("fullCurve"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCurveCopyDefinitionDispT<T>::get_fullCurve()
{
  _TDispID _dispid(*this, OLETEXT("fullCurve"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCurveCopyDefinitionDispT<T>::set_sence(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("sence"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCurveCopyDefinitionDispT<T>::get_sence()
{
  _TDispID _dispid(*this, OLETEXT("sence"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCurveCopyDefinitionDispT<T>::set_geomArray(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("geomArray"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCurveCopyDefinitionDispT<T>::get_geomArray()
{
  _TDispID _dispid(*this, OLETEXT("geomArray"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCurveCopyDefinitionDispT<T>::OperationArray()
{
  _TDispID _dispid(*this, OLETEXT("OperationArray"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCurveCopyDefinitionDispT<T>::CurveArray()
{
  _TDispID _dispid(*this, OLETEXT("CurveArray"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCurveCopyDefinitionDispT<T>::DeletedCollection()
{
  _TDispID _dispid(*this, OLETEXT("DeletedCollection"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksMirrorCopyDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB96-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> LPDISPATCH __fastcall
ksMirrorCopyDefinitionDispT<T>::GetOperationArray()
{
  _TDispID _dispid(*this, OLETEXT("GetOperationArray"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMirrorCopyDefinitionDispT<T>::GetPlane()
{
  _TDispID _dispid(*this, OLETEXT("GetPlane"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMirrorCopyDefinitionDispT<T>::SetPlane(LPDISPATCH plane)
{
  _TDispID _dispid(*this, OLETEXT("SetPlane"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = plane /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksMirrorCopyAllDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB99-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> LPDISPATCH __fastcall
ksMirrorCopyAllDefinitionDispT<T>::GetPlane()
{
  _TDispID _dispid(*this, OLETEXT("GetPlane"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMirrorCopyAllDefinitionDispT<T>::SetPlane(LPDISPATCH plane)
{
  _TDispID _dispid(*this, OLETEXT("SetPlane"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = plane /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMirrorCopyAllDefinitionDispT<T>::ChooseBodies()
{
  _TDispID _dispid(*this, OLETEXT("ChooseBodies"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksConicSpiralDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB9C-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksConicSpiralDefinitionDispT<T>::set_turn(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("turn"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksConicSpiralDefinitionDispT<T>::get_turn()
{
  _TDispID _dispid(*this, OLETEXT("turn"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicSpiralDefinitionDispT<T>::set_step(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("step"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksConicSpiralDefinitionDispT<T>::get_step()
{
  _TDispID _dispid(*this, OLETEXT("step"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicSpiralDefinitionDispT<T>::set_turnDir(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("turnDir"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksConicSpiralDefinitionDispT<T>::get_turnDir()
{
  _TDispID _dispid(*this, OLETEXT("turnDir"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicSpiralDefinitionDispT<T>::set_buildMode(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("buildMode"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksConicSpiralDefinitionDispT<T>::get_buildMode()
{
  _TDispID _dispid(*this, OLETEXT("buildMode"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicSpiralDefinitionDispT<T>::set_buildDir(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("buildDir"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksConicSpiralDefinitionDispT<T>::get_buildDir()
{
  _TDispID _dispid(*this, OLETEXT("buildDir"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicSpiralDefinitionDispT<T>::set_height(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("height"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksConicSpiralDefinitionDispT<T>::get_height()
{
  _TDispID _dispid(*this, OLETEXT("height"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicSpiralDefinitionDispT<T>::set_heightType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("heightType"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksConicSpiralDefinitionDispT<T>::get_heightType()
{
  _TDispID _dispid(*this, OLETEXT("heightType"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicSpiralDefinitionDispT<T>::set_heightAdd(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("heightAdd"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksConicSpiralDefinitionDispT<T>::get_heightAdd()
{
  _TDispID _dispid(*this, OLETEXT("heightAdd"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicSpiralDefinitionDispT<T>::set_heightAddHow(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("heightAddHow"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksConicSpiralDefinitionDispT<T>::get_heightAddHow()
{
  _TDispID _dispid(*this, OLETEXT("heightAddHow"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicSpiralDefinitionDispT<T>::set_initialDiam(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("initialDiam"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksConicSpiralDefinitionDispT<T>::get_initialDiam()
{
  _TDispID _dispid(*this, OLETEXT("initialDiam"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicSpiralDefinitionDispT<T>::set_initialDiamType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("initialDiamType"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksConicSpiralDefinitionDispT<T>::get_initialDiamType()
{
  _TDispID _dispid(*this, OLETEXT("initialDiamType"), DISPID(11));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicSpiralDefinitionDispT<T>::set_terminalDiam(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("terminalDiam"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksConicSpiralDefinitionDispT<T>::get_terminalDiam()
{
  _TDispID _dispid(*this, OLETEXT("terminalDiam"), DISPID(12));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicSpiralDefinitionDispT<T>::set_terminalDiamType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("terminalDiamType"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksConicSpiralDefinitionDispT<T>::get_terminalDiamType()
{
  _TDispID _dispid(*this, OLETEXT("terminalDiamType"), DISPID(13));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicSpiralDefinitionDispT<T>::set_tiltAngleHow(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("tiltAngleHow"), DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksConicSpiralDefinitionDispT<T>::get_tiltAngleHow()
{
  _TDispID _dispid(*this, OLETEXT("tiltAngleHow"), DISPID(14));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicSpiralDefinitionDispT<T>::set_firstAngle(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("firstAngle"), DISPID(15));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksConicSpiralDefinitionDispT<T>::get_firstAngle()
{
  _TDispID _dispid(*this, OLETEXT("firstAngle"), DISPID(15));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConicSpiralDefinitionDispT<T>::set_tiltAngle(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("tiltAngle"), DISPID(16));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksConicSpiralDefinitionDispT<T>::get_tiltAngle()
{
  _TDispID _dispid(*this, OLETEXT("tiltAngle"), DISPID(16));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksConicSpiralDefinitionDispT<T>::GetPlane()
{
  _TDispID _dispid(*this, OLETEXT("GetPlane"), DISPID(17));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksConicSpiralDefinitionDispT<T>::SetPlane(LPDISPATCH plane)
{
  _TDispID _dispid(*this, OLETEXT("SetPlane"), DISPID(18));
  TAutoArgs<1> _args;
  _args[1] = plane /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksConicSpiralDefinitionDispT<T>::GetLocation(double* x, double* y)
{
  _TDispID _dispid(*this, OLETEXT("GetLocation"), DISPID(19));
  TAutoArgs<2> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksConicSpiralDefinitionDispT<T>::SetLocation(double x, double y)
{
  _TDispID _dispid(*this, OLETEXT("SetLocation"), DISPID(20));
  TAutoArgs<2> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksConicSpiralDefinitionDispT<T>::GetHeightObject()
{
  _TDispID _dispid(*this, OLETEXT("GetHeightObject"), DISPID(21));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksConicSpiralDefinitionDispT<T>::SetHeightObject(LPDISPATCH heightObject)
{
  _TDispID _dispid(*this, OLETEXT("SetHeightObject"), DISPID(22));
  TAutoArgs<1> _args;
  _args[1] = heightObject /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksConicSpiralDefinitionDispT<T>::GetInitialDiamObject()
{
  _TDispID _dispid(*this, OLETEXT("GetInitialDiamObject"), DISPID(23));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksConicSpiralDefinitionDispT<T>::SetInitialDiamObject(LPDISPATCH initialDiamObject)
{
  _TDispID _dispid(*this, OLETEXT("SetInitialDiamObject"), DISPID(24));
  TAutoArgs<1> _args;
  _args[1] = initialDiamObject /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksConicSpiralDefinitionDispT<T>::GetTerminalDiamObject()
{
  _TDispID _dispid(*this, OLETEXT("GetTerminalDiamObject"), DISPID(25));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksConicSpiralDefinitionDispT<T>::SetTerminalDiamObject(LPDISPATCH terminalDiamObject)
{
  _TDispID _dispid(*this, OLETEXT("SetTerminalDiamObject"), DISPID(26));
  TAutoArgs<1> _args;
  _args[1] = terminalDiamObject /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksConicSpiralDefinitionDispT<T>::GetSketch()
{
  _TDispID _dispid(*this, OLETEXT("GetSketch"), DISPID(27));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCylindricSpiralDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BB9F-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksCylindricSpiralDefinitionDispT<T>::set_turn(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("turn"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCylindricSpiralDefinitionDispT<T>::get_turn()
{
  _TDispID _dispid(*this, OLETEXT("turn"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCylindricSpiralDefinitionDispT<T>::set_step(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("step"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCylindricSpiralDefinitionDispT<T>::get_step()
{
  _TDispID _dispid(*this, OLETEXT("step"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCylindricSpiralDefinitionDispT<T>::set_turnDir(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("turnDir"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCylindricSpiralDefinitionDispT<T>::get_turnDir()
{
  _TDispID _dispid(*this, OLETEXT("turnDir"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCylindricSpiralDefinitionDispT<T>::set_buildMode(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("buildMode"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksCylindricSpiralDefinitionDispT<T>::get_buildMode()
{
  _TDispID _dispid(*this, OLETEXT("buildMode"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCylindricSpiralDefinitionDispT<T>::set_buildDir(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("buildDir"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCylindricSpiralDefinitionDispT<T>::get_buildDir()
{
  _TDispID _dispid(*this, OLETEXT("buildDir"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCylindricSpiralDefinitionDispT<T>::set_height(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("height"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCylindricSpiralDefinitionDispT<T>::get_height()
{
  _TDispID _dispid(*this, OLETEXT("height"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCylindricSpiralDefinitionDispT<T>::set_heightType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("heightType"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksCylindricSpiralDefinitionDispT<T>::get_heightType()
{
  _TDispID _dispid(*this, OLETEXT("heightType"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCylindricSpiralDefinitionDispT<T>::set_heightAdd(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("heightAdd"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCylindricSpiralDefinitionDispT<T>::get_heightAdd()
{
  _TDispID _dispid(*this, OLETEXT("heightAdd"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCylindricSpiralDefinitionDispT<T>::set_heightAddHow(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("heightAddHow"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCylindricSpiralDefinitionDispT<T>::get_heightAddHow()
{
  _TDispID _dispid(*this, OLETEXT("heightAddHow"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCylindricSpiralDefinitionDispT<T>::set_diam(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("diam"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCylindricSpiralDefinitionDispT<T>::get_diam()
{
  _TDispID _dispid(*this, OLETEXT("diam"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCylindricSpiralDefinitionDispT<T>::set_diamType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("diamType"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksCylindricSpiralDefinitionDispT<T>::get_diamType()
{
  _TDispID _dispid(*this, OLETEXT("diamType"), DISPID(11));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCylindricSpiralDefinitionDispT<T>::set_firstAngle(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("firstAngle"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCylindricSpiralDefinitionDispT<T>::get_firstAngle()
{
  _TDispID _dispid(*this, OLETEXT("firstAngle"), DISPID(12));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCylindricSpiralDefinitionDispT<T>::GetPlane()
{
  _TDispID _dispid(*this, OLETEXT("GetPlane"), DISPID(13));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCylindricSpiralDefinitionDispT<T>::SetPlane(LPDISPATCH plane)
{
  _TDispID _dispid(*this, OLETEXT("SetPlane"), DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = plane /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCylindricSpiralDefinitionDispT<T>::GetLocation(double* x, double* y)
{
  _TDispID _dispid(*this, OLETEXT("GetLocation"), DISPID(15));
  TAutoArgs<2> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCylindricSpiralDefinitionDispT<T>::SetLocation(double x, double y)
{
  _TDispID _dispid(*this, OLETEXT("SetLocation"), DISPID(16));
  TAutoArgs<2> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCylindricSpiralDefinitionDispT<T>::GetHeightObject()
{
  _TDispID _dispid(*this, OLETEXT("GetHeightObject"), DISPID(17));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCylindricSpiralDefinitionDispT<T>::SetHeightObject(LPDISPATCH heightObject)
{
  _TDispID _dispid(*this, OLETEXT("SetHeightObject"), DISPID(18));
  TAutoArgs<1> _args;
  _args[1] = heightObject /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCylindricSpiralDefinitionDispT<T>::GetDiamObject()
{
  _TDispID _dispid(*this, OLETEXT("GetDiamObject"), DISPID(19));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCylindricSpiralDefinitionDispT<T>::SetDiamObject(LPDISPATCH diamObject)
{
  _TDispID _dispid(*this, OLETEXT("SetDiamObject"), DISPID(20));
  TAutoArgs<1> _args;
  _args[1] = diamObject /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCylindricSpiralDefinitionDispT<T>::GetSketch()
{
  _TDispID _dispid(*this, OLETEXT("GetSketch"), DISPID(21));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksPolyLineDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BBA2-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksPolyLineDefinitionDispT<T>::set_closed(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("closed"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksPolyLineDefinitionDispT<T>::get_closed()
{
  _TDispID _dispid(*this, OLETEXT("closed"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksPolyLineDefinitionDispT<T>::set_vertexVisible(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("vertexVisible"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksPolyLineDefinitionDispT<T>::get_vertexVisible()
{
  _TDispID _dispid(*this, OLETEXT("vertexVisible"), DISPID(13));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksPolyLineDefinitionDispT<T>::GetCountVertex()
{
  _TDispID _dispid(*this, OLETEXT("GetCountVertex"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPolyLineDefinitionDispT<T>::AddVertex(double x, double y, double z, double radius)
{
  _TDispID _dispid(*this, OLETEXT("AddVertex"), DISPID(3));
  TAutoArgs<4> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = z /*[VT_R8:0]*/;
  _args[4] = radius /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPolyLineDefinitionDispT<T>::InsertVertex(long index, double x, double y, double z, double radius)
{
  _TDispID _dispid(*this, OLETEXT("InsertVertex"), DISPID(4));
  TAutoArgs<5> _args;
  _args[1] = index /*[VT_I4:0]*/;
  _args[2] = x /*[VT_R8:0]*/;
  _args[3] = y /*[VT_R8:0]*/;
  _args[4] = z /*[VT_R8:0]*/;
  _args[5] = radius /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPolyLineDefinitionDispT<T>::DeleteVertex(long index)
{
  _TDispID _dispid(*this, OLETEXT("DeleteVertex"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPolyLineDefinitionDispT<T>::GetParamVertex(long index, double* x, double* y, double* z, 
                                             double* radius)
{
  _TDispID _dispid(*this, OLETEXT("GetParamVertex"), DISPID(6));
  TAutoArgs<5> _args;
  _args[1] = index /*[VT_I4:0]*/;
  _args[2] = x /*[VT_R8:1]*/;
  _args[3] = y /*[VT_R8:1]*/;
  _args[4] = z /*[VT_R8:1]*/;
  _args[5] = radius /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPolyLineDefinitionDispT<T>::Flush()
{
  _TDispID _dispid(*this, OLETEXT("Flush"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPolyLineDefinitionDispT<T>::ReadFromFile(BSTR fileName)
{
  _TDispID _dispid(*this, OLETEXT("ReadFromFile"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPolyLineDefinitionDispT<T>::WriteToFile(BSTR fileName)
{
  _TDispID _dispid(*this, OLETEXT("WriteToFile"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPolyLineDefinitionDispT<T>::EdgeCollection()
{
  _TDispID _dispid(*this, OLETEXT("EdgeCollection"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksPolyLineVertexParamPtr __fastcall
ksPolyLineDefinitionDispT<T>::AddPointWithParams(long index)
{
  _TDispID _dispid(*this, OLETEXT("AddPointWithParams"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksPolyLineVertexParam* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksPolyLineVertexParamPtr __fastcall
ksPolyLineDefinitionDispT<T>::GetPointParams(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetPointParams"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksPolyLineVertexParam* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksPolyLineVertexParam
// Flags:     (4096) Dispatchable
// GUID:      {1BCC4F0F-1091-41A3-895B-0608D20715B7}
// *********************************************************************//
template <class T> void __fastcall
ksPolyLineVertexParamDispT<T>::set_buildingType(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("buildingType"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksPolyLineVertexParamDispT<T>::get_buildingType()
{
  _TDispID _dispid(*this, OLETEXT("buildingType"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPolyLineVertexParamDispT<T>::GetParamVertex(double* x, double* y, double* z, double* radius)
{
  _TDispID _dispid(*this, OLETEXT("GetParamVertex"), DISPID(2));
  TAutoArgs<4> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  _args[3] = z /*[VT_R8:1]*/;
  _args[4] = radius /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPolyLineVertexParamDispT<T>::SetParamVertex(double x, double y, double z, double radius)
{
  _TDispID _dispid(*this, OLETEXT("SetParamVertex"), DISPID(3));
  TAutoArgs<4> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = z /*[VT_R8:0]*/;
  _args[4] = radius /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPolyLineVertexParamDispT<T>::SetParamByVertex(Kompas6api5_tlb::ksEntityPtr vertex, double radius)
{
  _TDispID _dispid(*this, OLETEXT("SetParamByVertex"), DISPID(4));
  TAutoArgs<2> _args;
  _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksEntity*)vertex /*[VT_USERDEFINED:1]*/;
  _args[2] = radius /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPolyLineVertexParamDispT<T>::GetParamByDistance(double* distance, double* radius)
{
  _TDispID _dispid(*this, OLETEXT("GetParamByDistance"), DISPID(5));
  TAutoArgs<2> _args;
  _args[1] = distance /*[VT_R8:1]*/;
  _args[2] = radius /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPolyLineVertexParamDispT<T>::SetParamByDistance(double distance, double radius)
{
  _TDispID _dispid(*this, OLETEXT("SetParamByDistance"), DISPID(6));
  TAutoArgs<2> _args;
  _args[1] = distance /*[VT_R8:0]*/;
  _args[2] = radius /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksEntityPtr __fastcall
ksPolyLineVertexParamDispT<T>::GetBuildingObject()
{
  _TDispID _dispid(*this, OLETEXT("GetBuildingObject"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksEntity* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPolyLineVertexParamDispT<T>::SetBuildingObject(Kompas6api5_tlb::ksEntityPtr object)
{
  _TDispID _dispid(*this, OLETEXT("SetBuildingObject"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksEntity*)object /*[VT_USERDEFINED:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksEntityPtr __fastcall
ksPolyLineVertexParamDispT<T>::GetAssociation()
{
  _TDispID _dispid(*this, OLETEXT("GetAssociation"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksEntity* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPolyLineVertexParamDispT<T>::SetAssociation(Kompas6api5_tlb::ksEntityPtr vertex)
{
  _TDispID _dispid(*this, OLETEXT("SetAssociation"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = (LPDISPATCH)(Kompas6api5_tlb::ksEntity*)vertex /*[VT_USERDEFINED:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksEntityPtr __fastcall
ksPolyLineVertexParamDispT<T>::GetVertex()
{
  _TDispID _dispid(*this, OLETEXT("GetVertex"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksEntity* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> int __fastcall
ksPolyLineVertexParamDispT<T>::GetIndex()
{
  _TDispID _dispid(*this, OLETEXT("GetIndex"), DISPID(12));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSplineDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BBA5-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksSplineDefinitionDispT<T>::set_closed(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("closed"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksSplineDefinitionDispT<T>::get_closed()
{
  _TDispID _dispid(*this, OLETEXT("closed"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSplineDefinitionDispT<T>::set_splineOnPoles(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("splineOnPoles"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksSplineDefinitionDispT<T>::get_splineOnPoles()
{
  _TDispID _dispid(*this, OLETEXT("splineOnPoles"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksSplineDefinitionDispT<T>::set_degree(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("degree"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksSplineDefinitionDispT<T>::get_degree()
{
  _TDispID _dispid(*this, OLETEXT("degree"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSplineDefinitionDispT<T>::GetCountVertex()
{
  _TDispID _dispid(*this, OLETEXT("GetCountVertex"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSplineDefinitionDispT<T>::AddVertex(double x, double y, double z, double radius)
{
  _TDispID _dispid(*this, OLETEXT("AddVertex"), DISPID(5));
  TAutoArgs<4> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = z /*[VT_R8:0]*/;
  _args[4] = radius /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSplineDefinitionDispT<T>::InsertVertex(long index, double x, double y, double z, double weight)
{
  _TDispID _dispid(*this, OLETEXT("InsertVertex"), DISPID(6));
  TAutoArgs<5> _args;
  _args[1] = index /*[VT_I4:0]*/;
  _args[2] = x /*[VT_R8:0]*/;
  _args[3] = y /*[VT_R8:0]*/;
  _args[4] = z /*[VT_R8:0]*/;
  _args[5] = weight /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSplineDefinitionDispT<T>::DeleteVertex(long index)
{
  _TDispID _dispid(*this, OLETEXT("DeleteVertex"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSplineDefinitionDispT<T>::GetParamVertex(long index, double* x, double* y, double* z, 
                                           double* weight)
{
  _TDispID _dispid(*this, OLETEXT("GetParamVertex"), DISPID(8));
  TAutoArgs<5> _args;
  _args[1] = index /*[VT_I4:0]*/;
  _args[2] = x /*[VT_R8:1]*/;
  _args[3] = y /*[VT_R8:1]*/;
  _args[4] = z /*[VT_R8:1]*/;
  _args[5] = weight /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSplineDefinitionDispT<T>::Flush()
{
  _TDispID _dispid(*this, OLETEXT("Flush"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSplineDefinitionDispT<T>::ReadFromFile(BSTR fileName)
{
  _TDispID _dispid(*this, OLETEXT("ReadFromFile"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSplineDefinitionDispT<T>::WriteToFile(BSTR fileName)
{
  _TDispID _dispid(*this, OLETEXT("WriteToFile"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = fileName /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSplineDefinitionDispT<T>::AddVertexAndAssociation(long index, LPDISPATCH obj, double weight)
{
  _TDispID _dispid(*this, OLETEXT("AddVertexAndAssociation"), DISPID(12));
  TAutoArgs<3> _args;
  _args[1] = index /*[VT_I4:0]*/;
  _args[2] = obj /*[VT_DISPATCH:0]*/;
  _args[3] = weight /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSplineDefinitionDispT<T>::SetAssociation(long index, LPDISPATCH obj)
{
  _TDispID _dispid(*this, OLETEXT("SetAssociation"), DISPID(13));
  TAutoArgs<2> _args;
  _args[1] = index /*[VT_I4:0]*/;
  _args[2] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSplineDefinitionDispT<T>::GetAssociation(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetAssociation"), DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksBaseExtrusionDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFE1-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksBaseExtrusionDefinitionDispT<T>::set_directionType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("directionType"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksBaseExtrusionDefinitionDispT<T>::get_directionType()
{
  _TDispID _dispid(*this, OLETEXT("directionType"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBaseExtrusionDefinitionDispT<T>::SetSketch(LPDISPATCH sketch)
{
  _TDispID _dispid(*this, OLETEXT("SetSketch"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = sketch /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBaseExtrusionDefinitionDispT<T>::GetSketch()
{
  _TDispID _dispid(*this, OLETEXT("GetSketch"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBaseExtrusionDefinitionDispT<T>::GetSideParam(TOLEBOOL side1, short* type, double* depth, 
                                                double* draftValue, TOLEBOOL* draftOutward)
{
  _TDispID _dispid(*this, OLETEXT("GetSideParam"), DISPID(4));
  TAutoArgs<5> _args;
  _args[1] = side1 /*[VT_BOOL:0]*/;
  _args[2] = type /*[VT_I2:1]*/;
  _args[3] = depth /*[VT_R8:1]*/;
  _args[4] = draftValue /*[VT_R8:1]*/;
  _args[5] = draftOutward /*[VT_BOOL:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBaseExtrusionDefinitionDispT<T>::SetSideParam(TOLEBOOL side1, short type/*[def,opt]*/, 
                                                double depth/*[def,opt]*/, 
                                                double draftValue/*[def,opt]*/, 
                                                TOLEBOOL draftOutward/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetSideParam"), DISPID(5));
  TAutoArgs<5> _args;
  _args[1] = side1 /*[VT_BOOL:0]*/;
  _args[2] = type /*[VT_I2:0]*/;
  _args[3] = depth /*[VT_R8:0]*/;
  _args[4] = draftValue /*[VT_R8:0]*/;
  _args[5] = draftOutward /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBaseExtrusionDefinitionDispT<T>::GetThinParam(TOLEBOOL* thin, short* thinType, 
                                                double* normalThickness, double* reverseTthickness)
{
  _TDispID _dispid(*this, OLETEXT("GetThinParam"), DISPID(6));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:1]*/;
  _args[2] = thinType /*[VT_I2:1]*/;
  _args[3] = normalThickness /*[VT_R8:1]*/;
  _args[4] = reverseTthickness /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBaseExtrusionDefinitionDispT<T>::SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                                double normalThickness/*[def,opt]*/, 
                                                double reverseThickness/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetThinParam"), DISPID(7));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:0]*/;
  _args[2] = thinType /*[VT_I2:0]*/;
  _args[3] = normalThickness /*[VT_R8:0]*/;
  _args[4] = reverseThickness /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBaseExtrusionDefinitionDispT<T>::ThinParam()
{
  _TDispID _dispid(*this, OLETEXT("ThinParam"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBaseExtrusionDefinitionDispT<T>::ExtrusionParam()
{
  _TDispID _dispid(*this, OLETEXT("ExtrusionParam"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBaseExtrusionDefinitionDispT<T>::GetDepthObject(TOLEBOOL normal)
{
  _TDispID _dispid(*this, OLETEXT("GetDepthObject"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = normal /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBaseExtrusionDefinitionDispT<T>::SetDepthObject(TOLEBOOL normal, LPDISPATCH obj)
{
  _TDispID _dispid(*this, OLETEXT("SetDepthObject"), DISPID(11));
  TAutoArgs<2> _args;
  _args[1] = normal /*[VT_BOOL:0]*/;
  _args[2] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBaseExtrusionDefinitionDispT<T>::ResetDepthObject(TOLEBOOL normal)
{
  _TDispID _dispid(*this, OLETEXT("ResetDepthObject"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = normal /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksBossExtrusionDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFE4-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksBossExtrusionDefinitionDispT<T>::set_directionType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("directionType"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksBossExtrusionDefinitionDispT<T>::get_directionType()
{
  _TDispID _dispid(*this, OLETEXT("directionType"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBossExtrusionDefinitionDispT<T>::SetSketch(LPDISPATCH sketch)
{
  _TDispID _dispid(*this, OLETEXT("SetSketch"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = sketch /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBossExtrusionDefinitionDispT<T>::GetSketch()
{
  _TDispID _dispid(*this, OLETEXT("GetSketch"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBossExtrusionDefinitionDispT<T>::GetSideParam(TOLEBOOL side1, short* type, double* depth, 
                                                double* draftValue, TOLEBOOL* draftOutward)
{
  _TDispID _dispid(*this, OLETEXT("GetSideParam"), DISPID(4));
  TAutoArgs<5> _args;
  _args[1] = side1 /*[VT_BOOL:0]*/;
  _args[2] = type /*[VT_I2:1]*/;
  _args[3] = depth /*[VT_R8:1]*/;
  _args[4] = draftValue /*[VT_R8:1]*/;
  _args[5] = draftOutward /*[VT_BOOL:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBossExtrusionDefinitionDispT<T>::SetSideParam(TOLEBOOL side1, short type/*[def,opt]*/, 
                                                double depth/*[def,opt]*/, 
                                                double draftValue/*[def,opt]*/, 
                                                TOLEBOOL draftOutward/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetSideParam"), DISPID(5));
  TAutoArgs<5> _args;
  _args[1] = side1 /*[VT_BOOL:0]*/;
  _args[2] = type /*[VT_I2:0]*/;
  _args[3] = depth /*[VT_R8:0]*/;
  _args[4] = draftValue /*[VT_R8:0]*/;
  _args[5] = draftOutward /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBossExtrusionDefinitionDispT<T>::GetThinParam(TOLEBOOL* thin, short* thinType, 
                                                double* normalThickness, double* reverseTthickness)
{
  _TDispID _dispid(*this, OLETEXT("GetThinParam"), DISPID(6));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:1]*/;
  _args[2] = thinType /*[VT_I2:1]*/;
  _args[3] = normalThickness /*[VT_R8:1]*/;
  _args[4] = reverseTthickness /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBossExtrusionDefinitionDispT<T>::SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                                double normalThickness/*[def,opt]*/, 
                                                double reverseThickness/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetThinParam"), DISPID(7));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:0]*/;
  _args[2] = thinType /*[VT_I2:0]*/;
  _args[3] = normalThickness /*[VT_R8:0]*/;
  _args[4] = reverseThickness /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBossExtrusionDefinitionDispT<T>::ThinParam()
{
  _TDispID _dispid(*this, OLETEXT("ThinParam"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBossExtrusionDefinitionDispT<T>::ExtrusionParam()
{
  _TDispID _dispid(*this, OLETEXT("ExtrusionParam"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBossExtrusionDefinitionDispT<T>::GetDepthObject(TOLEBOOL normal)
{
  _TDispID _dispid(*this, OLETEXT("GetDepthObject"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = normal /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBossExtrusionDefinitionDispT<T>::SetDepthObject(TOLEBOOL normal, LPDISPATCH obj)
{
  _TDispID _dispid(*this, OLETEXT("SetDepthObject"), DISPID(11));
  TAutoArgs<2> _args;
  _args[1] = normal /*[VT_BOOL:0]*/;
  _args[2] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBossExtrusionDefinitionDispT<T>::ResetDepthObject(TOLEBOOL normal)
{
  _TDispID _dispid(*this, OLETEXT("ResetDepthObject"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = normal /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBossExtrusionDefinitionDispT<T>::ChooseBodies()
{
  _TDispID _dispid(*this, OLETEXT("ChooseBodies"), DISPID(13));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCutExtrusionDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFE7-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksCutExtrusionDefinitionDispT<T>::set_directionType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("directionType"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksCutExtrusionDefinitionDispT<T>::get_directionType()
{
  _TDispID _dispid(*this, OLETEXT("directionType"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCutExtrusionDefinitionDispT<T>::set_cut(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("cut"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCutExtrusionDefinitionDispT<T>::get_cut()
{
  _TDispID _dispid(*this, OLETEXT("cut"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCutExtrusionDefinitionDispT<T>::set_chooseType(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("chooseType"), DISPID(15));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksCutExtrusionDefinitionDispT<T>::get_chooseType()
{
  _TDispID _dispid(*this, OLETEXT("chooseType"), DISPID(15));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutExtrusionDefinitionDispT<T>::SetSketch(LPDISPATCH sketch)
{
  _TDispID _dispid(*this, OLETEXT("SetSketch"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = sketch /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutExtrusionDefinitionDispT<T>::GetSketch()
{
  _TDispID _dispid(*this, OLETEXT("GetSketch"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutExtrusionDefinitionDispT<T>::GetSideParam(TOLEBOOL side1, short* type, double* depth, 
                                               double* draftValue, TOLEBOOL* draftOutward)
{
  _TDispID _dispid(*this, OLETEXT("GetSideParam"), DISPID(5));
  TAutoArgs<5> _args;
  _args[1] = side1 /*[VT_BOOL:0]*/;
  _args[2] = type /*[VT_I2:1]*/;
  _args[3] = depth /*[VT_R8:1]*/;
  _args[4] = draftValue /*[VT_R8:1]*/;
  _args[5] = draftOutward /*[VT_BOOL:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutExtrusionDefinitionDispT<T>::SetSideParam(TOLEBOOL side1, short type/*[def,opt]*/, 
                                               double depth/*[def,opt]*/, 
                                               double draftValue/*[def,opt]*/, 
                                               TOLEBOOL draftOutward/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetSideParam"), DISPID(6));
  TAutoArgs<5> _args;
  _args[1] = side1 /*[VT_BOOL:0]*/;
  _args[2] = type /*[VT_I2:0]*/;
  _args[3] = depth /*[VT_R8:0]*/;
  _args[4] = draftValue /*[VT_R8:0]*/;
  _args[5] = draftOutward /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutExtrusionDefinitionDispT<T>::GetThinParam(TOLEBOOL* thin, short* thinType, 
                                               double* normalThickness, double* reverseTthickness)
{
  _TDispID _dispid(*this, OLETEXT("GetThinParam"), DISPID(7));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:1]*/;
  _args[2] = thinType /*[VT_I2:1]*/;
  _args[3] = normalThickness /*[VT_R8:1]*/;
  _args[4] = reverseTthickness /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutExtrusionDefinitionDispT<T>::SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                               double normalThickness/*[def,opt]*/, 
                                               double reverseThickness/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetThinParam"), DISPID(8));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:0]*/;
  _args[2] = thinType /*[VT_I2:0]*/;
  _args[3] = normalThickness /*[VT_R8:0]*/;
  _args[4] = reverseThickness /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutExtrusionDefinitionDispT<T>::ThinParam()
{
  _TDispID _dispid(*this, OLETEXT("ThinParam"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutExtrusionDefinitionDispT<T>::ExtrusionParam()
{
  _TDispID _dispid(*this, OLETEXT("ExtrusionParam"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutExtrusionDefinitionDispT<T>::GetDepthObject(TOLEBOOL normal)
{
  _TDispID _dispid(*this, OLETEXT("GetDepthObject"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = normal /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutExtrusionDefinitionDispT<T>::SetDepthObject(TOLEBOOL normal, LPDISPATCH obj)
{
  _TDispID _dispid(*this, OLETEXT("SetDepthObject"), DISPID(12));
  TAutoArgs<2> _args;
  _args[1] = normal /*[VT_BOOL:0]*/;
  _args[2] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutExtrusionDefinitionDispT<T>::ResetDepthObject(TOLEBOOL normal)
{
  _TDispID _dispid(*this, OLETEXT("ResetDepthObject"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = normal /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutExtrusionDefinitionDispT<T>::ChooseBodies()
{
  _TDispID _dispid(*this, OLETEXT("ChooseBodies"), DISPID(14));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutExtrusionDefinitionDispT<T>::ChooseParts()
{
  _TDispID _dispid(*this, OLETEXT("ChooseParts"), DISPID(16));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksExtrusionSurfaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {B20E24C3-5E4A-4CDA-A1ED-6BB8EBC81A29}
// *********************************************************************//
template <class T> void __fastcall
ksExtrusionSurfaceDefinitionDispT<T>::set_directionType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("directionType"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksExtrusionSurfaceDefinitionDispT<T>::get_directionType()
{
  _TDispID _dispid(*this, OLETEXT("directionType"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksExtrusionSurfaceDefinitionDispT<T>::set_closedShell(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("closedShell"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksExtrusionSurfaceDefinitionDispT<T>::get_closedShell()
{
  _TDispID _dispid(*this, OLETEXT("closedShell"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksExtrusionSurfaceDefinitionDispT<T>::SetSketch(LPDISPATCH sketch)
{
  _TDispID _dispid(*this, OLETEXT("SetSketch"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = sketch /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksExtrusionSurfaceDefinitionDispT<T>::GetSketch()
{
  _TDispID _dispid(*this, OLETEXT("GetSketch"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksExtrusionSurfaceDefinitionDispT<T>::GetSideParam(TOLEBOOL side1, short* type, double* depth, 
                                                   double* draftValue, TOLEBOOL* draftOutward)
{
  _TDispID _dispid(*this, OLETEXT("GetSideParam"), DISPID(5));
  TAutoArgs<5> _args;
  _args[1] = side1 /*[VT_BOOL:0]*/;
  _args[2] = type /*[VT_I2:1]*/;
  _args[3] = depth /*[VT_R8:1]*/;
  _args[4] = draftValue /*[VT_R8:1]*/;
  _args[5] = draftOutward /*[VT_BOOL:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksExtrusionSurfaceDefinitionDispT<T>::SetSideParam(TOLEBOOL side1, short type/*[def,opt]*/, 
                                                   double depth/*[def,opt]*/, 
                                                   double draftValue/*[def,opt]*/, 
                                                   TOLEBOOL draftOutward/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetSideParam"), DISPID(6));
  TAutoArgs<5> _args;
  _args[1] = side1 /*[VT_BOOL:0]*/;
  _args[2] = type /*[VT_I2:0]*/;
  _args[3] = depth /*[VT_R8:0]*/;
  _args[4] = draftValue /*[VT_R8:0]*/;
  _args[5] = draftOutward /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksExtrusionSurfaceDefinitionDispT<T>::ExtrusionParam()
{
  _TDispID _dispid(*this, OLETEXT("ExtrusionParam"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksExtrusionSurfaceDefinitionDispT<T>::GetDepthObject(TOLEBOOL normal)
{
  _TDispID _dispid(*this, OLETEXT("GetDepthObject"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = normal /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksExtrusionSurfaceDefinitionDispT<T>::SetDepthObject(TOLEBOOL normal, LPDISPATCH obj)
{
  _TDispID _dispid(*this, OLETEXT("SetDepthObject"), DISPID(9));
  TAutoArgs<2> _args;
  _args[1] = normal /*[VT_BOOL:0]*/;
  _args[2] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksExtrusionSurfaceDefinitionDispT<T>::ResetDepthObject(TOLEBOOL normal)
{
  _TDispID _dispid(*this, OLETEXT("ResetDepthObject"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = normal /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksFaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BBA8-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksFaceDefinitionDispT<T>::IsPlanar()
{
  _TDispID _dispid(*this, OLETEXT("IsPlanar"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksFaceDefinitionDispT<T>::IsCone()
{
  _TDispID _dispid(*this, OLETEXT("IsCone"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksFaceDefinitionDispT<T>::IsCylinder()
{
  _TDispID _dispid(*this, OLETEXT("IsCylinder"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksFaceDefinitionDispT<T>::GetCylinderParam(double* h, double* r)
{
  _TDispID _dispid(*this, OLETEXT("GetCylinderParam"), DISPID(4));
  TAutoArgs<2> _args;
  _args[1] = h /*[VT_R8:1]*/;
  _args[2] = r /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksFaceDefinitionDispT<T>::GetOwnerEntity()
{
  _TDispID _dispid(*this, OLETEXT("GetOwnerEntity"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksFaceDefinitionDispT<T>::GetSurface()
{
  _TDispID _dispid(*this, OLETEXT("GetSurface"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksFaceDefinitionDispT<T>::LoopCollection()
{
  _TDispID _dispid(*this, OLETEXT("LoopCollection"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksFaceDefinitionDispT<T>::get_normalOrientation()
{
  _TDispID _dispid(*this, OLETEXT("normalOrientation"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksFaceDefinitionDispT<T>::IsConnectedWith(LPDISPATCH faceDefinition)
{
  _TDispID _dispid(*this, OLETEXT("IsConnectedWith"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = faceDefinition /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksFaceDefinitionDispT<T>::ConnectedFaceCollection()
{
  _TDispID _dispid(*this, OLETEXT("ConnectedFaceCollection"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksFaceDefinitionDispT<T>::EdgeCollection()
{
  _TDispID _dispid(*this, OLETEXT("EdgeCollection"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksFaceDefinitionDispT<T>::GetNextFace()
{
  _TDispID _dispid(*this, OLETEXT("GetNextFace"), DISPID(12));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksFaceDefinitionDispT<T>::IsTorus()
{
  _TDispID _dispid(*this, OLETEXT("IsTorus"), DISPID(13));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksFaceDefinitionDispT<T>::IsSphere()
{
  _TDispID _dispid(*this, OLETEXT("IsSphere"), DISPID(14));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksFaceDefinitionDispT<T>::IsNurbsSurface()
{
  _TDispID _dispid(*this, OLETEXT("IsNurbsSurface"), DISPID(15));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksFaceDefinitionDispT<T>::IsRevolved()
{
  _TDispID _dispid(*this, OLETEXT("IsRevolved"), DISPID(16));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksFaceDefinitionDispT<T>::IsSwept()
{
  _TDispID _dispid(*this, OLETEXT("IsSwept"), DISPID(17));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksFaceDefinitionDispT<T>::GetTessellation()
{
  _TDispID _dispid(*this, OLETEXT("GetTessellation"), DISPID(18));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksFaceDefinitionDispT<T>::GetArea(unsigned_long bitVector)
{
  _TDispID _dispid(*this, OLETEXT("GetArea"), DISPID(19));
  TAutoArgs<1> _args;
  _args[1] = bitVector /*[VT_UI4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksFaceDefinitionDispT<T>::GetEntity()
{
  _TDispID _dispid(*this, OLETEXT("GetEntity"), DISPID(20));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksFaceDefinitionDispT<T>::IsValid()
{
  _TDispID _dispid(*this, OLETEXT("IsValid"), DISPID(21));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksEdgeDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BBAB-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksEdgeDefinitionDispT<T>::IsStraight()
{
  _TDispID _dispid(*this, OLETEXT("IsStraight"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEdgeDefinitionDispT<T>::GetOwnerEntity()
{
  _TDispID _dispid(*this, OLETEXT("GetOwnerEntity"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEdgeDefinitionDispT<T>::GetCurve3D()
{
  _TDispID _dispid(*this, OLETEXT("GetCurve3D"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEdgeDefinitionDispT<T>::GetAdjacentFace(TOLEBOOL facePlus)
{
  _TDispID _dispid(*this, OLETEXT("GetAdjacentFace"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = facePlus /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEdgeDefinitionDispT<T>::GetVertex(TOLEBOOL start)
{
  _TDispID _dispid(*this, OLETEXT("GetVertex"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = start /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEdgeDefinitionDispT<T>::EdgeCollection(TOLEBOOL begin)
{
  _TDispID _dispid(*this, OLETEXT("EdgeCollection"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = begin /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEdgeDefinitionDispT<T>::OrientedEdgeCollection()
{
  _TDispID _dispid(*this, OLETEXT("OrientedEdgeCollection"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEdgeDefinitionDispT<T>::IsArc()
{
  _TDispID _dispid(*this, OLETEXT("IsArc"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEdgeDefinitionDispT<T>::IsCircle()
{
  _TDispID _dispid(*this, OLETEXT("IsCircle"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEdgeDefinitionDispT<T>::IsEllipse()
{
  _TDispID _dispid(*this, OLETEXT("IsEllipse"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEdgeDefinitionDispT<T>::IsNurbs()
{
  _TDispID _dispid(*this, OLETEXT("IsNurbs"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEdgeDefinitionDispT<T>::IsPeriodic()
{
  _TDispID _dispid(*this, OLETEXT("IsPeriodic"), DISPID(12));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksEdgeDefinitionDispT<T>::GetLength(unsigned_long bitVector)
{
  _TDispID _dispid(*this, OLETEXT("GetLength"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = bitVector /*[VT_UI4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEdgeDefinitionDispT<T>::GetEntity()
{
  _TDispID _dispid(*this, OLETEXT("GetEntity"), DISPID(14));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEdgeDefinitionDispT<T>::IsValid()
{
  _TDispID _dispid(*this, OLETEXT("IsValid"), DISPID(15));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksChamferDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BBAE-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksChamferDefinitionDispT<T>::set_tangent(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("tangent"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksChamferDefinitionDispT<T>::get_tangent()
{
  _TDispID _dispid(*this, OLETEXT("tangent"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksChamferDefinitionDispT<T>::GetChamferParam(TOLEBOOL* transfer, double* distance1, 
                                             double* distance2)
{
  _TDispID _dispid(*this, OLETEXT("GetChamferParam"), DISPID(2));
  TAutoArgs<3> _args;
  _args[1] = transfer /*[VT_BOOL:1]*/;
  _args[2] = distance1 /*[VT_R8:1]*/;
  _args[3] = distance2 /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksChamferDefinitionDispT<T>::SetChamferParam(TOLEBOOL transfer, double distance1, double distance2)
{
  _TDispID _dispid(*this, OLETEXT("SetChamferParam"), DISPID(3));
  TAutoArgs<3> _args;
  _args[1] = transfer /*[VT_BOOL:0]*/;
  _args[2] = distance1 /*[VT_R8:0]*/;
  _args[3] = distance2 /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksChamferDefinitionDispT<T>::array()
{
  _TDispID _dispid(*this, OLETEXT("array"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksFilletDefinition
// Flags:     (4096) Dispatchable
// GUID:      {0307BBB1-C193-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksFilletDefinitionDispT<T>::set_radius(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("radius"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksFilletDefinitionDispT<T>::get_radius()
{
  _TDispID _dispid(*this, OLETEXT("radius"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksFilletDefinitionDispT<T>::set_tangent(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("tangent"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksFilletDefinitionDispT<T>::get_tangent()
{
  _TDispID _dispid(*this, OLETEXT("tangent"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksFilletDefinitionDispT<T>::array()
{
  _TDispID _dispid(*this, OLETEXT("array"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksBaseLoftDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFEA-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksBaseLoftDefinitionDispT<T>::GetLoftParam(TOLEBOOL* closed, TOLEBOOL* flipVertex, 
                                           TOLEBOOL* autoPath)
{
  _TDispID _dispid(*this, OLETEXT("GetLoftParam"), DISPID(1));
  TAutoArgs<3> _args;
  _args[1] = closed /*[VT_BOOL:1]*/;
  _args[2] = flipVertex /*[VT_BOOL:1]*/;
  _args[3] = autoPath /*[VT_BOOL:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBaseLoftDefinitionDispT<T>::SetLoftParam(TOLEBOOL closed, TOLEBOOL flipVertex, TOLEBOOL autoPath)
{
  _TDispID _dispid(*this, OLETEXT("SetLoftParam"), DISPID(2));
  TAutoArgs<3> _args;
  _args[1] = closed /*[VT_BOOL:0]*/;
  _args[2] = flipVertex /*[VT_BOOL:0]*/;
  _args[3] = autoPath /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBaseLoftDefinitionDispT<T>::GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness
                                           , double* reverseTthickness)
{
  _TDispID _dispid(*this, OLETEXT("GetThinParam"), DISPID(3));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:1]*/;
  _args[2] = thinType /*[VT_I2:1]*/;
  _args[3] = normalThickness /*[VT_R8:1]*/;
  _args[4] = reverseTthickness /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBaseLoftDefinitionDispT<T>::SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                           double normalThickness/*[def,opt]*/, 
                                           double reverseThickness/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetThinParam"), DISPID(4));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:0]*/;
  _args[2] = thinType /*[VT_I2:0]*/;
  _args[3] = normalThickness /*[VT_R8:0]*/;
  _args[4] = reverseThickness /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBaseLoftDefinitionDispT<T>::ThinParam()
{
  _TDispID _dispid(*this, OLETEXT("ThinParam"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBaseLoftDefinitionDispT<T>::Sketchs()
{
  _TDispID _dispid(*this, OLETEXT("Sketchs"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksBossLoftDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFED-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksBossLoftDefinitionDispT<T>::GetLoftParam(TOLEBOOL* closed, TOLEBOOL* flipVertex, 
                                           TOLEBOOL* autoPath)
{
  _TDispID _dispid(*this, OLETEXT("GetLoftParam"), DISPID(1));
  TAutoArgs<3> _args;
  _args[1] = closed /*[VT_BOOL:1]*/;
  _args[2] = flipVertex /*[VT_BOOL:1]*/;
  _args[3] = autoPath /*[VT_BOOL:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBossLoftDefinitionDispT<T>::SetLoftParam(TOLEBOOL closed, TOLEBOOL flipVertex, TOLEBOOL autoPath)
{
  _TDispID _dispid(*this, OLETEXT("SetLoftParam"), DISPID(2));
  TAutoArgs<3> _args;
  _args[1] = closed /*[VT_BOOL:0]*/;
  _args[2] = flipVertex /*[VT_BOOL:0]*/;
  _args[3] = autoPath /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBossLoftDefinitionDispT<T>::GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness
                                           , double* reverseTthickness)
{
  _TDispID _dispid(*this, OLETEXT("GetThinParam"), DISPID(3));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:1]*/;
  _args[2] = thinType /*[VT_I2:1]*/;
  _args[3] = normalThickness /*[VT_R8:1]*/;
  _args[4] = reverseTthickness /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBossLoftDefinitionDispT<T>::SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                           double normalThickness/*[def,opt]*/, 
                                           double reverseThickness/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetThinParam"), DISPID(4));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:0]*/;
  _args[2] = thinType /*[VT_I2:0]*/;
  _args[3] = normalThickness /*[VT_R8:0]*/;
  _args[4] = reverseThickness /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBossLoftDefinitionDispT<T>::ThinParam()
{
  _TDispID _dispid(*this, OLETEXT("ThinParam"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBossLoftDefinitionDispT<T>::Sketchs()
{
  _TDispID _dispid(*this, OLETEXT("Sketchs"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBossLoftDefinitionDispT<T>::ChooseBodies()
{
  _TDispID _dispid(*this, OLETEXT("ChooseBodies"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBossLoftDefinitionDispT<T>::GetDirectionalLine()
{
  _TDispID _dispid(*this, OLETEXT("GetDirectionalLine"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBossLoftDefinitionDispT<T>::SetDirectionalLine(LPDISPATCH sketch)
{
  _TDispID _dispid(*this, OLETEXT("SetDirectionalLine"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = sketch /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCutLoftDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFF0-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksCutLoftDefinitionDispT<T>::set_cut(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("cut"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCutLoftDefinitionDispT<T>::get_cut()
{
  _TDispID _dispid(*this, OLETEXT("cut"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCutLoftDefinitionDispT<T>::set_chooseType(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("chooseType"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksCutLoftDefinitionDispT<T>::get_chooseType()
{
  _TDispID _dispid(*this, OLETEXT("chooseType"), DISPID(11));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutLoftDefinitionDispT<T>::GetLoftParam(TOLEBOOL* closed, TOLEBOOL* flipVertex, TOLEBOOL* autoPath)
{
  _TDispID _dispid(*this, OLETEXT("GetLoftParam"), DISPID(2));
  TAutoArgs<3> _args;
  _args[1] = closed /*[VT_BOOL:1]*/;
  _args[2] = flipVertex /*[VT_BOOL:1]*/;
  _args[3] = autoPath /*[VT_BOOL:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutLoftDefinitionDispT<T>::SetLoftParam(TOLEBOOL closed, TOLEBOOL flipVertex, TOLEBOOL autoPath)
{
  _TDispID _dispid(*this, OLETEXT("SetLoftParam"), DISPID(3));
  TAutoArgs<3> _args;
  _args[1] = closed /*[VT_BOOL:0]*/;
  _args[2] = flipVertex /*[VT_BOOL:0]*/;
  _args[3] = autoPath /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutLoftDefinitionDispT<T>::GetThinParam(TOLEBOOL* thin, short* thinType, double* normalThickness, 
                                          double* reverseTthickness)
{
  _TDispID _dispid(*this, OLETEXT("GetThinParam"), DISPID(4));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:1]*/;
  _args[2] = thinType /*[VT_I2:1]*/;
  _args[3] = normalThickness /*[VT_R8:1]*/;
  _args[4] = reverseTthickness /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutLoftDefinitionDispT<T>::SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                          double normalThickness/*[def,opt]*/, 
                                          double reverseThickness/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetThinParam"), DISPID(5));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:0]*/;
  _args[2] = thinType /*[VT_I2:0]*/;
  _args[3] = normalThickness /*[VT_R8:0]*/;
  _args[4] = reverseThickness /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutLoftDefinitionDispT<T>::ThinParam()
{
  _TDispID _dispid(*this, OLETEXT("ThinParam"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutLoftDefinitionDispT<T>::Sketchs()
{
  _TDispID _dispid(*this, OLETEXT("Sketchs"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutLoftDefinitionDispT<T>::ChooseBodies()
{
  _TDispID _dispid(*this, OLETEXT("ChooseBodies"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutLoftDefinitionDispT<T>::GetDirectionalLine()
{
  _TDispID _dispid(*this, OLETEXT("GetDirectionalLine"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutLoftDefinitionDispT<T>::SetDirectionalLine(LPDISPATCH sketch)
{
  _TDispID _dispid(*this, OLETEXT("SetDirectionalLine"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = sketch /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutLoftDefinitionDispT<T>::ChooseParts()
{
  _TDispID _dispid(*this, OLETEXT("ChooseParts"), DISPID(12));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksLoftSurfaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {E04339B5-AA08-4717-8E50-90ED0E375624}
// *********************************************************************//
template <class T> void __fastcall
ksLoftSurfaceDefinitionDispT<T>::set_closedShell(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("closedShell"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksLoftSurfaceDefinitionDispT<T>::get_closedShell()
{
  _TDispID _dispid(*this, OLETEXT("closedShell"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksLoftSurfaceDefinitionDispT<T>::GetLoftParam(TOLEBOOL* closed, TOLEBOOL* flipVertex, 
                                              TOLEBOOL* autoPath)
{
  _TDispID _dispid(*this, OLETEXT("GetLoftParam"), DISPID(2));
  TAutoArgs<3> _args;
  _args[1] = closed /*[VT_BOOL:1]*/;
  _args[2] = flipVertex /*[VT_BOOL:1]*/;
  _args[3] = autoPath /*[VT_BOOL:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksLoftSurfaceDefinitionDispT<T>::SetLoftParam(TOLEBOOL closed, TOLEBOOL flipVertex, 
                                              TOLEBOOL autoPath)
{
  _TDispID _dispid(*this, OLETEXT("SetLoftParam"), DISPID(3));
  TAutoArgs<3> _args;
  _args[1] = closed /*[VT_BOOL:0]*/;
  _args[2] = flipVertex /*[VT_BOOL:0]*/;
  _args[3] = autoPath /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksLoftSurfaceDefinitionDispT<T>::Sketchs()
{
  _TDispID _dispid(*this, OLETEXT("Sketchs"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksInclineDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFF3-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksInclineDefinitionDispT<T>::set_angle(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksInclineDefinitionDispT<T>::get_angle()
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksInclineDefinitionDispT<T>::set_direction(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("direction"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksInclineDefinitionDispT<T>::get_direction()
{
  _TDispID _dispid(*this, OLETEXT("direction"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksInclineDefinitionDispT<T>::FaceArray()
{
  _TDispID _dispid(*this, OLETEXT("FaceArray"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksInclineDefinitionDispT<T>::GetPlane()
{
  _TDispID _dispid(*this, OLETEXT("GetPlane"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksInclineDefinitionDispT<T>::SetPlane(LPDISPATCH plane)
{
  _TDispID _dispid(*this, OLETEXT("SetPlane"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = plane /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksShellDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFF6-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksShellDefinitionDispT<T>::set_thickness(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("thickness"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksShellDefinitionDispT<T>::get_thickness()
{
  _TDispID _dispid(*this, OLETEXT("thickness"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksShellDefinitionDispT<T>::set_thinType(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("thinType"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksShellDefinitionDispT<T>::get_thinType()
{
  _TDispID _dispid(*this, OLETEXT("thinType"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksShellDefinitionDispT<T>::FaceArray()
{
  _TDispID _dispid(*this, OLETEXT("FaceArray"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksBaseEvolutionDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFF9-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksBaseEvolutionDefinitionDispT<T>::set_sketchShiftType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("sketchShiftType"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksBaseEvolutionDefinitionDispT<T>::get_sketchShiftType()
{
  _TDispID _dispid(*this, OLETEXT("sketchShiftType"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBaseEvolutionDefinitionDispT<T>::SetSketch(LPDISPATCH sketch)
{
  _TDispID _dispid(*this, OLETEXT("SetSketch"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = sketch /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBaseEvolutionDefinitionDispT<T>::GetSketch()
{
  _TDispID _dispid(*this, OLETEXT("GetSketch"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBaseEvolutionDefinitionDispT<T>::PathPartArray()
{
  _TDispID _dispid(*this, OLETEXT("PathPartArray"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBaseEvolutionDefinitionDispT<T>::GetThinParam(TOLEBOOL* thin, short* thinType, 
                                                double* normalThickness, double* reverseTthickness)
{
  _TDispID _dispid(*this, OLETEXT("GetThinParam"), DISPID(5));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:1]*/;
  _args[2] = thinType /*[VT_I2:1]*/;
  _args[3] = normalThickness /*[VT_R8:1]*/;
  _args[4] = reverseTthickness /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBaseEvolutionDefinitionDispT<T>::SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                                double normalThickness/*[def,opt]*/, 
                                                double reverseThickness/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetThinParam"), DISPID(6));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:0]*/;
  _args[2] = thinType /*[VT_I2:0]*/;
  _args[3] = normalThickness /*[VT_R8:0]*/;
  _args[4] = reverseThickness /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBaseEvolutionDefinitionDispT<T>::ThinParam()
{
  _TDispID _dispid(*this, OLETEXT("ThinParam"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksBaseEvolutionDefinitionDispT<T>::GetPathLength(unsigned_long bitVector)
{
  _TDispID _dispid(*this, OLETEXT("GetPathLength"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = bitVector /*[VT_UI4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksBossEvolutionDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFFC-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksBossEvolutionDefinitionDispT<T>::set_sketchShiftType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("sketchShiftType"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksBossEvolutionDefinitionDispT<T>::get_sketchShiftType()
{
  _TDispID _dispid(*this, OLETEXT("sketchShiftType"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBossEvolutionDefinitionDispT<T>::SetSketch(LPDISPATCH sketch)
{
  _TDispID _dispid(*this, OLETEXT("SetSketch"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = sketch /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBossEvolutionDefinitionDispT<T>::GetSketch()
{
  _TDispID _dispid(*this, OLETEXT("GetSketch"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBossEvolutionDefinitionDispT<T>::PathPartArray()
{
  _TDispID _dispid(*this, OLETEXT("PathPartArray"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBossEvolutionDefinitionDispT<T>::GetThinParam(TOLEBOOL* thin, short* thinType, 
                                                double* normalThickness, double* reverseTthickness)
{
  _TDispID _dispid(*this, OLETEXT("GetThinParam"), DISPID(5));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:1]*/;
  _args[2] = thinType /*[VT_I2:1]*/;
  _args[3] = normalThickness /*[VT_R8:1]*/;
  _args[4] = reverseTthickness /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBossEvolutionDefinitionDispT<T>::SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                                double normalThickness/*[def,opt]*/, 
                                                double reverseThickness/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetThinParam"), DISPID(6));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:0]*/;
  _args[2] = thinType /*[VT_I2:0]*/;
  _args[3] = normalThickness /*[VT_R8:0]*/;
  _args[4] = reverseThickness /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBossEvolutionDefinitionDispT<T>::ThinParam()
{
  _TDispID _dispid(*this, OLETEXT("ThinParam"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBossEvolutionDefinitionDispT<T>::ChooseBodies()
{
  _TDispID _dispid(*this, OLETEXT("ChooseBodies"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksBossEvolutionDefinitionDispT<T>::GetPathLength(unsigned_long bitVector)
{
  _TDispID _dispid(*this, OLETEXT("GetPathLength"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = bitVector /*[VT_UI4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCutEvolutionDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFEFFF-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksCutEvolutionDefinitionDispT<T>::set_sketchShiftType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("sketchShiftType"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksCutEvolutionDefinitionDispT<T>::get_sketchShiftType()
{
  _TDispID _dispid(*this, OLETEXT("sketchShiftType"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCutEvolutionDefinitionDispT<T>::set_cut(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("cut"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCutEvolutionDefinitionDispT<T>::get_cut()
{
  _TDispID _dispid(*this, OLETEXT("cut"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCutEvolutionDefinitionDispT<T>::set_chooseType(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("chooseType"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksCutEvolutionDefinitionDispT<T>::get_chooseType()
{
  _TDispID _dispid(*this, OLETEXT("chooseType"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutEvolutionDefinitionDispT<T>::SetSketch(LPDISPATCH sketch)
{
  _TDispID _dispid(*this, OLETEXT("SetSketch"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = sketch /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutEvolutionDefinitionDispT<T>::GetSketch()
{
  _TDispID _dispid(*this, OLETEXT("GetSketch"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutEvolutionDefinitionDispT<T>::PathPartArray()
{
  _TDispID _dispid(*this, OLETEXT("PathPartArray"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutEvolutionDefinitionDispT<T>::GetThinParam(TOLEBOOL* thin, short* thinType, 
                                               double* normalThickness, double* reverseTthickness)
{
  _TDispID _dispid(*this, OLETEXT("GetThinParam"), DISPID(6));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:1]*/;
  _args[2] = thinType /*[VT_I2:1]*/;
  _args[3] = normalThickness /*[VT_R8:1]*/;
  _args[4] = reverseTthickness /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutEvolutionDefinitionDispT<T>::SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                               double normalThickness/*[def,opt]*/, 
                                               double reverseThickness/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetThinParam"), DISPID(7));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:0]*/;
  _args[2] = thinType /*[VT_I2:0]*/;
  _args[3] = normalThickness /*[VT_R8:0]*/;
  _args[4] = reverseThickness /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutEvolutionDefinitionDispT<T>::ThinParam()
{
  _TDispID _dispid(*this, OLETEXT("ThinParam"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutEvolutionDefinitionDispT<T>::ChooseBodies()
{
  _TDispID _dispid(*this, OLETEXT("ChooseBodies"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutEvolutionDefinitionDispT<T>::ChooseParts()
{
  _TDispID _dispid(*this, OLETEXT("ChooseParts"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksCutEvolutionDefinitionDispT<T>::GetPathLength(unsigned_long bitVector)
{
  _TDispID _dispid(*this, OLETEXT("GetPathLength"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = bitVector /*[VT_UI4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksEvolutionSurfaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {2BD4C79E-E2C3-42E8-8FCC-B51FFBDE9F69}
// *********************************************************************//
template <class T> void __fastcall
ksEvolutionSurfaceDefinitionDispT<T>::set_sketchShiftType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("sketchShiftType"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksEvolutionSurfaceDefinitionDispT<T>::get_sketchShiftType()
{
  _TDispID _dispid(*this, OLETEXT("sketchShiftType"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksEvolutionSurfaceDefinitionDispT<T>::set_closedShell(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("closedShell"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksEvolutionSurfaceDefinitionDispT<T>::get_closedShell()
{
  _TDispID _dispid(*this, OLETEXT("closedShell"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksEvolutionSurfaceDefinitionDispT<T>::SetSketch(LPDISPATCH sketch)
{
  _TDispID _dispid(*this, OLETEXT("SetSketch"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = sketch /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEvolutionSurfaceDefinitionDispT<T>::GetSketch()
{
  _TDispID _dispid(*this, OLETEXT("GetSketch"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEvolutionSurfaceDefinitionDispT<T>::PathPartArray()
{
  _TDispID _dispid(*this, OLETEXT("PathPartArray"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksEvolutionSurfaceDefinitionDispT<T>::GetPathLength(unsigned_long bitVector)
{
  _TDispID _dispid(*this, OLETEXT("GetPathLength"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = bitVector /*[VT_UI4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksRibDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF002-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksRibDefinitionDispT<T>::set_index(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("index"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksRibDefinitionDispT<T>::get_index()
{
  _TDispID _dispid(*this, OLETEXT("index"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRibDefinitionDispT<T>::set_angle(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRibDefinitionDispT<T>::get_angle()
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRibDefinitionDispT<T>::set_side(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("side"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksRibDefinitionDispT<T>::get_side()
{
  _TDispID _dispid(*this, OLETEXT("side"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksRibDefinitionDispT<T>::GetSketch()
{
  _TDispID _dispid(*this, OLETEXT("GetSketch"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRibDefinitionDispT<T>::SetSketch(LPDISPATCH sketch)
{
  _TDispID _dispid(*this, OLETEXT("SetSketch"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = sketch /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRibDefinitionDispT<T>::GetThinParam(short* thinType, double* normalThickness, 
                                      double* reverseTthickness)
{
  _TDispID _dispid(*this, OLETEXT("GetThinParam"), DISPID(6));
  TAutoArgs<3> _args;
  _args[1] = thinType /*[VT_I2:1]*/;
  _args[2] = normalThickness /*[VT_R8:1]*/;
  _args[3] = reverseTthickness /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRibDefinitionDispT<T>::SetThinParam(short thinType/*[def,opt]*/, 
                                      double normalThickness/*[def,opt]*/, 
                                      double reverseThickness/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetThinParam"), DISPID(7));
  TAutoArgs<3> _args;
  _args[1] = thinType /*[VT_I2:0]*/;
  _args[2] = normalThickness /*[VT_R8:0]*/;
  _args[3] = reverseThickness /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksRibDefinitionDispT<T>::ThinParam()
{
  _TDispID _dispid(*this, OLETEXT("ThinParam"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCutByPlaneDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF005-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksCutByPlaneDefinitionDispT<T>::set_direction(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("direction"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCutByPlaneDefinitionDispT<T>::get_direction()
{
  _TDispID _dispid(*this, OLETEXT("direction"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCutByPlaneDefinitionDispT<T>::set_chooseType(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("chooseType"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksCutByPlaneDefinitionDispT<T>::get_chooseType()
{
  _TDispID _dispid(*this, OLETEXT("chooseType"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutByPlaneDefinitionDispT<T>::GetPlane()
{
  _TDispID _dispid(*this, OLETEXT("GetPlane"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutByPlaneDefinitionDispT<T>::SetPlane(LPDISPATCH plane)
{
  _TDispID _dispid(*this, OLETEXT("SetPlane"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = plane /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutByPlaneDefinitionDispT<T>::ChooseBodies()
{
  _TDispID _dispid(*this, OLETEXT("ChooseBodies"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutByPlaneDefinitionDispT<T>::ChooseParts()
{
  _TDispID _dispid(*this, OLETEXT("ChooseParts"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCutBySketchDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF008-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksCutBySketchDefinitionDispT<T>::set_direction(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("direction"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCutBySketchDefinitionDispT<T>::get_direction()
{
  _TDispID _dispid(*this, OLETEXT("direction"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCutBySketchDefinitionDispT<T>::set_chooseType(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("chooseType"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksCutBySketchDefinitionDispT<T>::get_chooseType()
{
  _TDispID _dispid(*this, OLETEXT("chooseType"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutBySketchDefinitionDispT<T>::GetSketch()
{
  _TDispID _dispid(*this, OLETEXT("GetSketch"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutBySketchDefinitionDispT<T>::SetSketch(LPDISPATCH sketch)
{
  _TDispID _dispid(*this, OLETEXT("SetSketch"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = sketch /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutBySketchDefinitionDispT<T>::ChooseBodies()
{
  _TDispID _dispid(*this, OLETEXT("ChooseBodies"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutBySketchDefinitionDispT<T>::ChooseParts()
{
  _TDispID _dispid(*this, OLETEXT("ChooseParts"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksPlaneOffsetDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF00B-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksPlaneOffsetDefinitionDispT<T>::set_offset(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("offset"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksPlaneOffsetDefinitionDispT<T>::get_offset()
{
  _TDispID _dispid(*this, OLETEXT("offset"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksPlaneOffsetDefinitionDispT<T>::set_direction(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("direction"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksPlaneOffsetDefinitionDispT<T>::get_direction()
{
  _TDispID _dispid(*this, OLETEXT("direction"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPlaneOffsetDefinitionDispT<T>::SetPlane(LPDISPATCH plane)
{
  _TDispID _dispid(*this, OLETEXT("SetPlane"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = plane /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneOffsetDefinitionDispT<T>::GetPlane()
{
  _TDispID _dispid(*this, OLETEXT("GetPlane"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneOffsetDefinitionDispT<T>::GetSurface()
{
  _TDispID _dispid(*this, OLETEXT("GetSurface"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksPlaneAngleDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF00E-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksPlaneAngleDefinitionDispT<T>::set_angle(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksPlaneAngleDefinitionDispT<T>::get_angle()
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPlaneAngleDefinitionDispT<T>::SetPlane(LPDISPATCH plane)
{
  _TDispID _dispid(*this, OLETEXT("SetPlane"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = plane /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneAngleDefinitionDispT<T>::GetPlane()
{
  _TDispID _dispid(*this, OLETEXT("GetPlane"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPlaneAngleDefinitionDispT<T>::SetAxis(LPDISPATCH axis)
{
  _TDispID _dispid(*this, OLETEXT("SetAxis"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = axis /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneAngleDefinitionDispT<T>::GetAxis()
{
  _TDispID _dispid(*this, OLETEXT("GetAxis"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneAngleDefinitionDispT<T>::GetSurface()
{
  _TDispID _dispid(*this, OLETEXT("GetSurface"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksPlane3PointsDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF011-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksPlane3PointsDefinitionDispT<T>::SetPoint(long number, LPDISPATCH point)
{
  _TDispID _dispid(*this, OLETEXT("SetPoint"), DISPID(1));
  TAutoArgs<2> _args;
  _args[1] = number /*[VT_I4:0]*/;
  _args[2] = point /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlane3PointsDefinitionDispT<T>::GetPoint(long number)
{
  _TDispID _dispid(*this, OLETEXT("GetPoint"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = number /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlane3PointsDefinitionDispT<T>::GetSurface()
{
  _TDispID _dispid(*this, OLETEXT("GetSurface"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksPlaneNormalToSurfaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF014-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksPlaneNormalToSurfaceDefinitionDispT<T>::set_angle(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksPlaneNormalToSurfaceDefinitionDispT<T>::get_angle()
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPlaneNormalToSurfaceDefinitionDispT<T>::SetFace(LPDISPATCH face)
{
  _TDispID _dispid(*this, OLETEXT("SetFace"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = face /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneNormalToSurfaceDefinitionDispT<T>::GetFace()
{
  _TDispID _dispid(*this, OLETEXT("GetFace"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPlaneNormalToSurfaceDefinitionDispT<T>::SetPlane(LPDISPATCH plane)
{
  _TDispID _dispid(*this, OLETEXT("SetPlane"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = plane /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneNormalToSurfaceDefinitionDispT<T>::GetPlane()
{
  _TDispID _dispid(*this, OLETEXT("GetPlane"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneNormalToSurfaceDefinitionDispT<T>::GetSurface()
{
  _TDispID _dispid(*this, OLETEXT("GetSurface"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksPlaneTangentToSurfaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF017-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksPlaneTangentToSurfaceDefinitionDispT<T>::set_choosePlane(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("choosePlane"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksPlaneTangentToSurfaceDefinitionDispT<T>::get_choosePlane()
{
  _TDispID _dispid(*this, OLETEXT("choosePlane"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksPlaneTangentToSurfaceDefinitionDispT<T>::set_angle(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksPlaneTangentToSurfaceDefinitionDispT<T>::get_angle()
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPlaneTangentToSurfaceDefinitionDispT<T>::SetFace(LPDISPATCH face)
{
  _TDispID _dispid(*this, OLETEXT("SetFace"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = face /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneTangentToSurfaceDefinitionDispT<T>::GetFace()
{
  _TDispID _dispid(*this, OLETEXT("GetFace"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPlaneTangentToSurfaceDefinitionDispT<T>::SetPlane(LPDISPATCH plane)
{
  _TDispID _dispid(*this, OLETEXT("SetPlane"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = plane /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneTangentToSurfaceDefinitionDispT<T>::GetPlane()
{
  _TDispID _dispid(*this, OLETEXT("GetPlane"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneTangentToSurfaceDefinitionDispT<T>::GetSurface()
{
  _TDispID _dispid(*this, OLETEXT("GetSurface"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksPlaneEdgePointDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF01A-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksPlaneEdgePointDefinitionDispT<T>::SetEdge(LPDISPATCH edge)
{
  _TDispID _dispid(*this, OLETEXT("SetEdge"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = edge /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneEdgePointDefinitionDispT<T>::GetEdge()
{
  _TDispID _dispid(*this, OLETEXT("GetEdge"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPlaneEdgePointDefinitionDispT<T>::SetPoint(LPDISPATCH point)
{
  _TDispID _dispid(*this, OLETEXT("SetPoint"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = point /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneEdgePointDefinitionDispT<T>::GetPoint()
{
  _TDispID _dispid(*this, OLETEXT("GetPoint"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneEdgePointDefinitionDispT<T>::GetSurface()
{
  _TDispID _dispid(*this, OLETEXT("GetSurface"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksPlaneParallelDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF01D-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksPlaneParallelDefinitionDispT<T>::SetPlane(LPDISPATCH plane)
{
  _TDispID _dispid(*this, OLETEXT("SetPlane"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = plane /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneParallelDefinitionDispT<T>::GetPlane()
{
  _TDispID _dispid(*this, OLETEXT("GetPlane"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPlaneParallelDefinitionDispT<T>::SetPoint(LPDISPATCH point)
{
  _TDispID _dispid(*this, OLETEXT("SetPoint"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = point /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneParallelDefinitionDispT<T>::GetPoint()
{
  _TDispID _dispid(*this, OLETEXT("GetPoint"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneParallelDefinitionDispT<T>::GetSurface()
{
  _TDispID _dispid(*this, OLETEXT("GetSurface"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksPlanePerpendicularDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF020-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksPlanePerpendicularDefinitionDispT<T>::SetEdge(LPDISPATCH edge)
{
  _TDispID _dispid(*this, OLETEXT("SetEdge"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = edge /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlanePerpendicularDefinitionDispT<T>::GetEdge()
{
  _TDispID _dispid(*this, OLETEXT("GetEdge"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPlanePerpendicularDefinitionDispT<T>::SetPoint(LPDISPATCH point)
{
  _TDispID _dispid(*this, OLETEXT("SetPoint"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = point /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlanePerpendicularDefinitionDispT<T>::GetPoint()
{
  _TDispID _dispid(*this, OLETEXT("GetPoint"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlanePerpendicularDefinitionDispT<T>::GetSurface()
{
  _TDispID _dispid(*this, OLETEXT("GetSurface"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksPlaneLineToEdgeDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF023-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksPlaneLineToEdgeDefinitionDispT<T>::set_parallel(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("parallel"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksPlaneLineToEdgeDefinitionDispT<T>::get_parallel()
{
  _TDispID _dispid(*this, OLETEXT("parallel"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPlaneLineToEdgeDefinitionDispT<T>::SetEdgeFirst(LPDISPATCH edge1)
{
  _TDispID _dispid(*this, OLETEXT("SetEdgeFirst"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = edge1 /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneLineToEdgeDefinitionDispT<T>::GetEdgeFirst()
{
  _TDispID _dispid(*this, OLETEXT("GetEdgeFirst"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPlaneLineToEdgeDefinitionDispT<T>::SetEdgeSecond(LPDISPATCH edge2)
{
  _TDispID _dispid(*this, OLETEXT("SetEdgeSecond"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = edge2 /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneLineToEdgeDefinitionDispT<T>::GetEdgeSecond()
{
  _TDispID _dispid(*this, OLETEXT("GetEdgeSecond"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneLineToEdgeDefinitionDispT<T>::GetSurface()
{
  _TDispID _dispid(*this, OLETEXT("GetSurface"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksPlaneLineToPlaneDefinition
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF026-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksPlaneLineToPlaneDefinitionDispT<T>::set_parallel(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("parallel"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksPlaneLineToPlaneDefinitionDispT<T>::get_parallel()
{
  _TDispID _dispid(*this, OLETEXT("parallel"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPlaneLineToPlaneDefinitionDispT<T>::SetEdge(LPDISPATCH edge)
{
  _TDispID _dispid(*this, OLETEXT("SetEdge"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = edge /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneLineToPlaneDefinitionDispT<T>::GetEdge()
{
  _TDispID _dispid(*this, OLETEXT("GetEdge"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPlaneLineToPlaneDefinitionDispT<T>::SetPlane(LPDISPATCH plane)
{
  _TDispID _dispid(*this, OLETEXT("SetPlane"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = plane /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneLineToPlaneDefinitionDispT<T>::GetPlane()
{
  _TDispID _dispid(*this, OLETEXT("GetPlane"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneLineToPlaneDefinitionDispT<T>::GetSurface()
{
  _TDispID _dispid(*this, OLETEXT("GetSurface"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksThinParam
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF029-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksThinParamDispT<T>::set_thin(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("thin"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksThinParamDispT<T>::get_thin()
{
  _TDispID _dispid(*this, OLETEXT("thin"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksThinParamDispT<T>::set_thinType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("thinType"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksThinParamDispT<T>::get_thinType()
{
  _TDispID _dispid(*this, OLETEXT("thinType"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksThinParamDispT<T>::set_normalThickness(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("normalThickness"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksThinParamDispT<T>::get_normalThickness()
{
  _TDispID _dispid(*this, OLETEXT("normalThickness"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksThinParamDispT<T>::set_reverseThickness(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("reverseThickness"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksThinParamDispT<T>::get_reverseThickness()
{
  _TDispID _dispid(*this, OLETEXT("reverseThickness"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksExtrusionParam
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF02C-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksExtrusionParamDispT<T>::set_typeNormal(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("typeNormal"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksExtrusionParamDispT<T>::get_typeNormal()
{
  _TDispID _dispid(*this, OLETEXT("typeNormal"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksExtrusionParamDispT<T>::set_depthNormal(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("depthNormal"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksExtrusionParamDispT<T>::get_depthNormal()
{
  _TDispID _dispid(*this, OLETEXT("depthNormal"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksExtrusionParamDispT<T>::set_draftValueNormal(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("draftValueNormal"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksExtrusionParamDispT<T>::get_draftValueNormal()
{
  _TDispID _dispid(*this, OLETEXT("draftValueNormal"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksExtrusionParamDispT<T>::set_draftOutwardNormal(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("draftOutwardNormal"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksExtrusionParamDispT<T>::get_draftOutwardNormal()
{
  _TDispID _dispid(*this, OLETEXT("draftOutwardNormal"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksExtrusionParamDispT<T>::set_typeReverse(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("typeReverse"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksExtrusionParamDispT<T>::get_typeReverse()
{
  _TDispID _dispid(*this, OLETEXT("typeReverse"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksExtrusionParamDispT<T>::set_depthReverse(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("depthReverse"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksExtrusionParamDispT<T>::get_depthReverse()
{
  _TDispID _dispid(*this, OLETEXT("depthReverse"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksExtrusionParamDispT<T>::set_draftValueReverse(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("draftValueReverse"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksExtrusionParamDispT<T>::get_draftValueReverse()
{
  _TDispID _dispid(*this, OLETEXT("draftValueReverse"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksExtrusionParamDispT<T>::set_draftOutwardReverse(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("draftOutwardReverse"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksExtrusionParamDispT<T>::get_draftOutwardReverse()
{
  _TDispID _dispid(*this, OLETEXT("draftOutwardReverse"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksExtrusionParamDispT<T>::set_direction(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("direction"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksExtrusionParamDispT<T>::get_direction()
{
  _TDispID _dispid(*this, OLETEXT("direction"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksRotatedParam
// Flags:     (4096) Dispatchable
// GUID:      {DEEFF02F-C3E2-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksRotatedParamDispT<T>::set_angleNormal(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angleNormal"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRotatedParamDispT<T>::get_angleNormal()
{
  _TDispID _dispid(*this, OLETEXT("angleNormal"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRotatedParamDispT<T>::set_angleReverse(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angleReverse"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRotatedParamDispT<T>::get_angleReverse()
{
  _TDispID _dispid(*this, OLETEXT("angleReverse"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRotatedParamDispT<T>::set_toroidShape(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("toroidShape"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksRotatedParamDispT<T>::get_toroidShape()
{
  _TDispID _dispid(*this, OLETEXT("toroidShape"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRotatedParamDispT<T>::set_direction(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("direction"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksRotatedParamDispT<T>::get_direction()
{
  _TDispID _dispid(*this, OLETEXT("direction"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksColorParam
// Flags:     (4096) Dispatchable
// GUID:      {2DFACC61-C4A4-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksColorParamDispT<T>::set_color(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("color"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksColorParamDispT<T>::get_color()
{
  _TDispID _dispid(*this, OLETEXT("color"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksColorParamDispT<T>::set_ambient(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ambient"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksColorParamDispT<T>::get_ambient()
{
  _TDispID _dispid(*this, OLETEXT("ambient"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksColorParamDispT<T>::set_diffuse(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("diffuse"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksColorParamDispT<T>::get_diffuse()
{
  _TDispID _dispid(*this, OLETEXT("diffuse"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksColorParamDispT<T>::set_specularity(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("specularity"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksColorParamDispT<T>::get_specularity()
{
  _TDispID _dispid(*this, OLETEXT("specularity"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksColorParamDispT<T>::set_shininess(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("shininess"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksColorParamDispT<T>::get_shininess()
{
  _TDispID _dispid(*this, OLETEXT("shininess"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksColorParamDispT<T>::set_transparency(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("transparency"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksColorParamDispT<T>::get_transparency()
{
  _TDispID _dispid(*this, OLETEXT("transparency"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksColorParamDispT<T>::set_emission(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("emission"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksColorParamDispT<T>::get_emission()
{
  _TDispID _dispid(*this, OLETEXT("emission"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksColorParamDispT<T>::Clear()
{
  _TDispID _dispid(*this, OLETEXT("Clear"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksBaseRotatedDefinition
// Flags:     (4096) Dispatchable
// GUID:      {2DFACC67-C4A4-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksBaseRotatedDefinitionDispT<T>::set_directionType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("directionType"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksBaseRotatedDefinitionDispT<T>::get_directionType()
{
  _TDispID _dispid(*this, OLETEXT("directionType"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBaseRotatedDefinitionDispT<T>::set_toroidShapeType(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("toroidShapeType"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksBaseRotatedDefinitionDispT<T>::get_toroidShapeType()
{
  _TDispID _dispid(*this, OLETEXT("toroidShapeType"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBaseRotatedDefinitionDispT<T>::SetSketch(LPDISPATCH sketch)
{
  _TDispID _dispid(*this, OLETEXT("SetSketch"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = sketch /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBaseRotatedDefinitionDispT<T>::GetSketch()
{
  _TDispID _dispid(*this, OLETEXT("GetSketch"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBaseRotatedDefinitionDispT<T>::GetSideParam(TOLEBOOL side1, double* angle)
{
  _TDispID _dispid(*this, OLETEXT("GetSideParam"), DISPID(5));
  TAutoArgs<2> _args;
  _args[1] = side1 /*[VT_BOOL:0]*/;
  _args[2] = angle /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBaseRotatedDefinitionDispT<T>::SetSideParam(TOLEBOOL side1/*[def,opt]*/, double angle/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetSideParam"), DISPID(6));
  TAutoArgs<2> _args;
  _args[1] = side1 /*[VT_BOOL:0]*/;
  _args[2] = angle /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBaseRotatedDefinitionDispT<T>::GetThinParam(TOLEBOOL* thin, short* thinType, 
                                              double* normalThickness, double* reverseTthickness)
{
  _TDispID _dispid(*this, OLETEXT("GetThinParam"), DISPID(7));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:1]*/;
  _args[2] = thinType /*[VT_I2:1]*/;
  _args[3] = normalThickness /*[VT_R8:1]*/;
  _args[4] = reverseTthickness /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBaseRotatedDefinitionDispT<T>::SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                              double normalThickness/*[def,opt]*/, 
                                              double reverseThickness/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetThinParam"), DISPID(8));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:0]*/;
  _args[2] = thinType /*[VT_I2:0]*/;
  _args[3] = normalThickness /*[VT_R8:0]*/;
  _args[4] = reverseThickness /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBaseRotatedDefinitionDispT<T>::ThinParam()
{
  _TDispID _dispid(*this, OLETEXT("ThinParam"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBaseRotatedDefinitionDispT<T>::RotatedParam()
{
  _TDispID _dispid(*this, OLETEXT("RotatedParam"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksBossRotatedDefinition
// Flags:     (4096) Dispatchable
// GUID:      {2DFACC6A-C4A4-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksBossRotatedDefinitionDispT<T>::set_directionType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("directionType"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksBossRotatedDefinitionDispT<T>::get_directionType()
{
  _TDispID _dispid(*this, OLETEXT("directionType"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksBossRotatedDefinitionDispT<T>::set_toroidShapeType(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("toroidShapeType"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksBossRotatedDefinitionDispT<T>::get_toroidShapeType()
{
  _TDispID _dispid(*this, OLETEXT("toroidShapeType"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBossRotatedDefinitionDispT<T>::SetSketch(LPDISPATCH sketch)
{
  _TDispID _dispid(*this, OLETEXT("SetSketch"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = sketch /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBossRotatedDefinitionDispT<T>::GetSketch()
{
  _TDispID _dispid(*this, OLETEXT("GetSketch"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBossRotatedDefinitionDispT<T>::GetSideParam(TOLEBOOL side1, double* angle)
{
  _TDispID _dispid(*this, OLETEXT("GetSideParam"), DISPID(5));
  TAutoArgs<2> _args;
  _args[1] = side1 /*[VT_BOOL:0]*/;
  _args[2] = angle /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBossRotatedDefinitionDispT<T>::SetSideParam(TOLEBOOL side1/*[def,opt]*/, double angle/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetSideParam"), DISPID(6));
  TAutoArgs<2> _args;
  _args[1] = side1 /*[VT_BOOL:0]*/;
  _args[2] = angle /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBossRotatedDefinitionDispT<T>::GetThinParam(TOLEBOOL* thin, short* thinType, 
                                              double* normalThickness, double* reverseTthickness)
{
  _TDispID _dispid(*this, OLETEXT("GetThinParam"), DISPID(7));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:1]*/;
  _args[2] = thinType /*[VT_I2:1]*/;
  _args[3] = normalThickness /*[VT_R8:1]*/;
  _args[4] = reverseTthickness /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBossRotatedDefinitionDispT<T>::SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                              double normalThickness/*[def,opt]*/, 
                                              double reverseThickness/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetThinParam"), DISPID(8));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:0]*/;
  _args[2] = thinType /*[VT_I2:0]*/;
  _args[3] = normalThickness /*[VT_R8:0]*/;
  _args[4] = reverseThickness /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBossRotatedDefinitionDispT<T>::ThinParam()
{
  _TDispID _dispid(*this, OLETEXT("ThinParam"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBossRotatedDefinitionDispT<T>::RotatedParam()
{
  _TDispID _dispid(*this, OLETEXT("RotatedParam"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBossRotatedDefinitionDispT<T>::ChooseBodies()
{
  _TDispID _dispid(*this, OLETEXT("ChooseBodies"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCutRotatedDefinition
// Flags:     (4096) Dispatchable
// GUID:      {2DFACC6D-C4A4-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksCutRotatedDefinitionDispT<T>::set_directionType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("directionType"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksCutRotatedDefinitionDispT<T>::get_directionType()
{
  _TDispID _dispid(*this, OLETEXT("directionType"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCutRotatedDefinitionDispT<T>::set_toroidShapeType(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("toroidShapeType"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCutRotatedDefinitionDispT<T>::get_toroidShapeType()
{
  _TDispID _dispid(*this, OLETEXT("toroidShapeType"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCutRotatedDefinitionDispT<T>::set_cut(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("cut"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCutRotatedDefinitionDispT<T>::get_cut()
{
  _TDispID _dispid(*this, OLETEXT("cut"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCutRotatedDefinitionDispT<T>::set_chooseType(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("chooseType"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksCutRotatedDefinitionDispT<T>::get_chooseType()
{
  _TDispID _dispid(*this, OLETEXT("chooseType"), DISPID(13));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutRotatedDefinitionDispT<T>::SetSketch(LPDISPATCH sketch)
{
  _TDispID _dispid(*this, OLETEXT("SetSketch"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = sketch /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutRotatedDefinitionDispT<T>::GetSketch()
{
  _TDispID _dispid(*this, OLETEXT("GetSketch"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutRotatedDefinitionDispT<T>::GetSideParam(TOLEBOOL side1, double* angle)
{
  _TDispID _dispid(*this, OLETEXT("GetSideParam"), DISPID(6));
  TAutoArgs<2> _args;
  _args[1] = side1 /*[VT_BOOL:0]*/;
  _args[2] = angle /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutRotatedDefinitionDispT<T>::SetSideParam(TOLEBOOL side1/*[def,opt]*/, double angle/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetSideParam"), DISPID(7));
  TAutoArgs<2> _args;
  _args[1] = side1 /*[VT_BOOL:0]*/;
  _args[2] = angle /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutRotatedDefinitionDispT<T>::GetThinParam(TOLEBOOL* thin, short* thinType, 
                                             double* normalThickness, double* reverseTthickness)
{
  _TDispID _dispid(*this, OLETEXT("GetThinParam"), DISPID(8));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:1]*/;
  _args[2] = thinType /*[VT_I2:1]*/;
  _args[3] = normalThickness /*[VT_R8:1]*/;
  _args[4] = reverseTthickness /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCutRotatedDefinitionDispT<T>::SetThinParam(TOLEBOOL thin, short thinType/*[def,opt]*/, 
                                             double normalThickness/*[def,opt]*/, 
                                             double reverseThickness/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetThinParam"), DISPID(9));
  TAutoArgs<4> _args;
  _args[1] = thin /*[VT_BOOL:0]*/;
  _args[2] = thinType /*[VT_I2:0]*/;
  _args[3] = normalThickness /*[VT_R8:0]*/;
  _args[4] = reverseThickness /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutRotatedDefinitionDispT<T>::ThinParam()
{
  _TDispID _dispid(*this, OLETEXT("ThinParam"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutRotatedDefinitionDispT<T>::RotatedParam()
{
  _TDispID _dispid(*this, OLETEXT("RotatedParam"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutRotatedDefinitionDispT<T>::ChooseBodies()
{
  _TDispID _dispid(*this, OLETEXT("ChooseBodies"), DISPID(12));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCutRotatedDefinitionDispT<T>::ChooseParts()
{
  _TDispID _dispid(*this, OLETEXT("ChooseParts"), DISPID(14));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksRotatedSurfaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {FD27841D-1374-4F7F-AE8A-C2A44F89120D}
// *********************************************************************//
template <class T> void __fastcall
ksRotatedSurfaceDefinitionDispT<T>::set_directionType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("directionType"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksRotatedSurfaceDefinitionDispT<T>::get_directionType()
{
  _TDispID _dispid(*this, OLETEXT("directionType"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRotatedSurfaceDefinitionDispT<T>::set_toroidShapeType(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("toroidShapeType"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksRotatedSurfaceDefinitionDispT<T>::get_toroidShapeType()
{
  _TDispID _dispid(*this, OLETEXT("toroidShapeType"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRotatedSurfaceDefinitionDispT<T>::set_closedShell(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("closedShell"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksRotatedSurfaceDefinitionDispT<T>::get_closedShell()
{
  _TDispID _dispid(*this, OLETEXT("closedShell"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRotatedSurfaceDefinitionDispT<T>::SetSketch(LPDISPATCH sketch)
{
  _TDispID _dispid(*this, OLETEXT("SetSketch"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = sketch /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksRotatedSurfaceDefinitionDispT<T>::GetSketch()
{
  _TDispID _dispid(*this, OLETEXT("GetSketch"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRotatedSurfaceDefinitionDispT<T>::GetSideParam(TOLEBOOL side1, double* angle)
{
  _TDispID _dispid(*this, OLETEXT("GetSideParam"), DISPID(6));
  TAutoArgs<2> _args;
  _args[1] = side1 /*[VT_BOOL:0]*/;
  _args[2] = angle /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRotatedSurfaceDefinitionDispT<T>::SetSideParam(TOLEBOOL side1/*[def,opt]*/, 
                                                 double angle/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetSideParam"), DISPID(7));
  TAutoArgs<2> _args;
  _args[1] = side1 /*[VT_BOOL:0]*/;
  _args[2] = angle /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksRotatedSurfaceDefinitionDispT<T>::RotatedParam()
{
  _TDispID _dispid(*this, OLETEXT("RotatedParam"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSketchDefinition
// Flags:     (4096) Dispatchable
// GUID:      {2DFACC70-C4A4-11D6-8734-00C0262CDD2C}
// *********************************************************************//
template <class T> void __fastcall
ksSketchDefinitionDispT<T>::set_angle(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksSketchDefinitionDispT<T>::get_angle()
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSketchDefinitionDispT<T>::EndEdit()
{
  _TDispID _dispid(*this, OLETEXT("EndEdit"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSketchDefinitionDispT<T>::SetPlane(LPDISPATCH plane)
{
  _TDispID _dispid(*this, OLETEXT("SetPlane"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = plane /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSketchDefinitionDispT<T>::GetPlane()
{
  _TDispID _dispid(*this, OLETEXT("GetPlane"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSketchDefinitionDispT<T>::GetLocation(double* x, double* y)
{
  _TDispID _dispid(*this, OLETEXT("GetLocation"), DISPID(5));
  TAutoArgs<2> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSketchDefinitionDispT<T>::SetLocation(double x/*[def,opt]*/, double y/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetLocation"), DISPID(6));
  TAutoArgs<2> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSketchDefinitionDispT<T>::GetLoftPoint(double* x, double* y)
{
  _TDispID _dispid(*this, OLETEXT("GetLoftPoint"), DISPID(7));
  TAutoArgs<2> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSketchDefinitionDispT<T>::UserSetPlacement(BSTR prompt/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("UserSetPlacement"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = prompt /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSketchDefinitionDispT<T>::BeginEdit()
{
  _TDispID _dispid(*this, OLETEXT("BeginEdit"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSketchDefinitionDispT<T>::AddProjectionOf(LPDISPATCH entity)
{
  _TDispID _dispid(*this, OLETEXT("AddProjectionOf"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSketchDefinitionDispT<T>::SetLoftPoint(double x/*[def,opt]*/, double y/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("SetLoftPoint"), DISPID(11));
  TAutoArgs<2> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSketchDefinitionDispT<T>::GetSurface()
{
  _TDispID _dispid(*this, OLETEXT("GetSurface"), DISPID(12));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksRasterFormatParam
// Flags:     (4096) Dispatchable
// GUID:      {1A91A8AB-AF8C-4EE3-86D4-0A9C00123195}
// *********************************************************************//
template <class T> void __fastcall
ksRasterFormatParamDispT<T>::set_format(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("format"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksRasterFormatParamDispT<T>::get_format()
{
  _TDispID _dispid(*this, OLETEXT("format"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRasterFormatParamDispT<T>::set_colorBPP(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("colorBPP"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksRasterFormatParamDispT<T>::get_colorBPP()
{
  _TDispID _dispid(*this, OLETEXT("colorBPP"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRasterFormatParamDispT<T>::set_greyScale(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("greyScale"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksRasterFormatParamDispT<T>::get_greyScale()
{
  _TDispID _dispid(*this, OLETEXT("greyScale"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRasterFormatParamDispT<T>::set_extResolution(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("extResolution"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksRasterFormatParamDispT<T>::get_extResolution()
{
  _TDispID _dispid(*this, OLETEXT("extResolution"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRasterFormatParamDispT<T>::set_extScale(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("extScale"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRasterFormatParamDispT<T>::get_extScale()
{
  _TDispID _dispid(*this, OLETEXT("extScale"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRasterFormatParamDispT<T>::set_colorType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("colorType"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksRasterFormatParamDispT<T>::get_colorType()
{
  _TDispID _dispid(*this, OLETEXT("colorType"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRasterFormatParamDispT<T>::set_onlyThinLine(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("onlyThinLine"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksRasterFormatParamDispT<T>::get_onlyThinLine()
{
  _TDispID _dispid(*this, OLETEXT("onlyThinLine"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRasterFormatParamDispT<T>::set_pages(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("pages"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksRasterFormatParamDispT<T>::get_pages()
{
  _TDispID _dispid(*this, OLETEXT("pages"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRasterFormatParamDispT<T>::set_rangeIndex(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("rangeIndex"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksRasterFormatParamDispT<T>::get_rangeIndex()
{
  _TDispID _dispid(*this, OLETEXT("rangeIndex"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRasterFormatParamDispT<T>::set_multiPageOutput(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("multiPageOutput"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksRasterFormatParamDispT<T>::get_multiPageOutput()
{
  _TDispID _dispid(*this, OLETEXT("multiPageOutput"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRasterFormatParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksAdditionFormatParam
// Flags:     (4096) Dispatchable
// GUID:      {0FD25FF9-AB0A-48F3-BAD4-F193116C0887}
// *********************************************************************//
template <class T> void __fastcall
ksAdditionFormatParamDispT<T>::set_format(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("format"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksAdditionFormatParamDispT<T>::get_format()
{
  _TDispID _dispid(*this, OLETEXT("format"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAdditionFormatParamDispT<T>::set_formatBinary(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("formatBinary"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksAdditionFormatParamDispT<T>::get_formatBinary()
{
  _TDispID _dispid(*this, OLETEXT("formatBinary"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAdditionFormatParamDispT<T>::set_topolgyIncluded(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("topolgyIncluded"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksAdditionFormatParamDispT<T>::get_topolgyIncluded()
{
  _TDispID _dispid(*this, OLETEXT("topolgyIncluded"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksAdditionFormatParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksConstraintParam
// Flags:     (4096) Dispatchable
// GUID:      {862E250D-9DB1-47E8-8EE2-9BE2D2453D5A}
// *********************************************************************//
template <class T> void __fastcall
ksConstraintParamDispT<T>::set_constrType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("constrType"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksConstraintParamDispT<T>::get_constrType()
{
  _TDispID _dispid(*this, OLETEXT("constrType"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConstraintParamDispT<T>::set_index(int /*[VT_INT:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("index"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> int /*[VT_INT:0]*/ __fastcall
ksConstraintParamDispT<T>::get_index()
{
  _TDispID _dispid(*this, OLETEXT("index"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConstraintParamDispT<T>::set_partner(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("partner"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksConstraintParamDispT<T>::get_partner()
{
  _TDispID _dispid(*this, OLETEXT("partner"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksConstraintParamDispT<T>::set_partnerIndex(int /*[VT_INT:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("partnerIndex"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> int /*[VT_INT:0]*/ __fastcall
ksConstraintParamDispT<T>::get_partnerIndex()
{
  _TDispID _dispid(*this, OLETEXT("partnerIndex"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksConstraintParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksImportedSurfaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {78A2C35E-A7DA-414E-B90A-F19998EC7BD1}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksImportedSurfaceDefinitionDispT<T>::Clear()
{
  _TDispID _dispid(*this, OLETEXT("Clear"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksImportedSurfaceDefinitionDispT<T>::BeginCurve()
{
  _TDispID _dispid(*this, OLETEXT("BeginCurve"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksImportedSurfaceDefinitionDispT<T>::AddPoint(double x, double y, double z)
{
  _TDispID _dispid(*this, OLETEXT("AddPoint"), DISPID(3));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = z /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksImportedSurfaceDefinitionDispT<T>::EndCurve()
{
  _TDispID _dispid(*this, OLETEXT("EndCurve"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksImportedSurfaceDefinitionDispT<T>::AddCurve(TVariant arr)
{
  _TDispID _dispid(*this, OLETEXT("AddCurve"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = arr /*[VT_VARIANT:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksFaceCollection
// Flags:     (4096) Dispatchable
// GUID:      {0E95ACE0-0E73-406F-AE94-E8A0592E298D}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksFaceCollectionDispT<T>::refresh()
{
  _TDispID _dispid(*this, OLETEXT("refresh"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksFaceCollectionDispT<T>::GetCount()
{
  _TDispID _dispid(*this, OLETEXT("GetCount"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksFaceCollectionDispT<T>::First()
{
  _TDispID _dispid(*this, OLETEXT("First"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksFaceCollectionDispT<T>::Last()
{
  _TDispID _dispid(*this, OLETEXT("Last"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksFaceCollectionDispT<T>::Next()
{
  _TDispID _dispid(*this, OLETEXT("Next"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksFaceCollectionDispT<T>::Prev()
{
  _TDispID _dispid(*this, OLETEXT("Prev"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksFaceCollectionDispT<T>::GetByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetByIndex"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksFaceCollectionDispT<T>::GetByName(BSTR name, TOLEBOOL testFullName/*[def,opt]*/, 
                                    TOLEBOOL testIgnoreCase/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("GetByName"), DISPID(8));
  TAutoArgs<3> _args;
  _args[1] = name /*[VT_BSTR:0]*/;
  _args[2] = testFullName /*[VT_BOOL:0]*/;
  _args[3] = testIgnoreCase /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksFaceCollectionDispT<T>::FindIt(LPDISPATCH entity)
{
  _TDispID _dispid(*this, OLETEXT("FindIt"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksVertexDefinition
// Flags:     (4096) Dispatchable
// GUID:      {A7257E73-EB61-4602-BC8B-2D00EA4AA062}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksVertexDefinitionDispT<T>::GetPoint(double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetPoint"), DISPID(1));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  _args[3] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksVertexDefinitionDispT<T>::GetOwnerEntity()
{
  _TDispID _dispid(*this, OLETEXT("GetOwnerEntity"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksVertexDefinitionDispT<T>::get_topologyVertex()
{
  _TDispID _dispid(*this, OLETEXT("topologyVertex"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksVertexDefinitionDispT<T>::get_freeVertex()
{
  _TDispID _dispid(*this, OLETEXT("freeVertex"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksTessellation
// Flags:     (4096) Dispatchable
// GUID:      {B810650E-7819-485C-90D2-ADEB647AE5E2}
// *********************************************************************//
template <class T> long __fastcall
ksTessellationDispT<T>::GetFacetsCount()
{
  _TDispID _dispid(*this, OLETEXT("GetFacetsCount"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksTessellationDispT<T>::GetFacetData(int index, LPDISPATCH facet)
{
  _TDispID _dispid(*this, OLETEXT("GetFacetData"), DISPID(2));
  TAutoArgs<2> _args;
  _args[1] = index /*[VT_INT:0]*/;
  _args[2] = facet /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksTessellationDispT<T>::GetPointsCount()
{
  _TDispID _dispid(*this, OLETEXT("GetPointsCount"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksTessellationDispT<T>::GetPoint(int index, float* x, float* y, float* z)
{
  _TDispID _dispid(*this, OLETEXT("GetPoint"), DISPID(4));
  TAutoArgs<4> _args;
  _args[1] = index /*[VT_INT:0]*/;
  _args[2] = x /*[VT_R4:1]*/;
  _args[3] = y /*[VT_R4:1]*/;
  _args[4] = z /*[VT_R4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksTessellationDispT<T>::GetNormal(int index, float* x, float* y, float* z)
{
  _TDispID _dispid(*this, OLETEXT("GetNormal"), DISPID(5));
  TAutoArgs<4> _args;
  _args[1] = index /*[VT_INT:0]*/;
  _args[2] = x /*[VT_R4:1]*/;
  _args[3] = y /*[VT_R4:1]*/;
  _args[4] = z /*[VT_R4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksTessellationDispT<T>::SetFacetSize(double sag)
{
  _TDispID _dispid(*this, OLETEXT("SetFacetSize"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = sag /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksTessellationDispT<T>::GetFacetSize()
{
  _TDispID _dispid(*this, OLETEXT("GetFacetSize"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksTessellationDispT<T>::GetFacet()
{
  _TDispID _dispid(*this, OLETEXT("GetFacet"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksTessellationDispT<T>::refresh()
{
  _TDispID _dispid(*this, OLETEXT("refresh"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksTessellationDispT<T>::GetFacetPoints(TVariant* points, TVariant* indexes)
{
  _TDispID _dispid(*this, OLETEXT("GetFacetPoints"), DISPID(10));
  TAutoArgs<2> _args;
  _args[1] = points /*[VT_VARIANT:1]*/;
  _args[2] = indexes /*[VT_VARIANT:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksTessellationDispT<T>::GetFacetNormals(TVariant* normals)
{
  _TDispID _dispid(*this, OLETEXT("GetFacetNormals"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = normals /*[VT_VARIANT:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksFacet
// Flags:     (4096) Dispatchable
// GUID:      {EB6AFBC0-C387-4E07-B24E-DDF2B7926A26}
// *********************************************************************//
template <class T> int __fastcall
ksFacetDispT<T>::GetPointsCount()
{
  _TDispID _dispid(*this, OLETEXT("GetPointsCount"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksFacetDispT<T>::GetPoint(int index, float* x, float* y, float* z)
{
  _TDispID _dispid(*this, OLETEXT("GetPoint"), DISPID(2));
  TAutoArgs<4> _args;
  _args[1] = index /*[VT_INT:0]*/;
  _args[2] = x /*[VT_R4:1]*/;
  _args[3] = y /*[VT_R4:1]*/;
  _args[4] = z /*[VT_R4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksFacetDispT<T>::GetNormal(int index, float* x, float* y, float* z)
{
  _TDispID _dispid(*this, OLETEXT("GetNormal"), DISPID(3));
  TAutoArgs<4> _args;
  _args[1] = index /*[VT_INT:0]*/;
  _args[2] = x /*[VT_R4:1]*/;
  _args[3] = y /*[VT_R4:1]*/;
  _args[4] = z /*[VT_R4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> int __fastcall
ksFacetDispT<T>::GetTessellationIndex(int index)
{
  _TDispID _dispid(*this, OLETEXT("GetTessellationIndex"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_INT:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksMeasurer
// Flags:     (4096) Dispatchable
// GUID:      {ABC84FE5-3945-4A0B-820A-719BF4B79224}
// *********************************************************************//
template <class T> void __fastcall
ksMeasurerDispT<T>::set_unit(unsigned_long /*[VT_UI4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("unit"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> unsigned_long /*[VT_UI4:0]*/ __fastcall
ksMeasurerDispT<T>::get_unit()
{
  _TDispID _dispid(*this, OLETEXT("unit"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMeasurerDispT<T>::set_extendObject1(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("extendObject1"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksMeasurerDispT<T>::get_extendObject1()
{
  _TDispID _dispid(*this, OLETEXT("extendObject1"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMeasurerDispT<T>::set_extendObject2(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("extendObject2"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksMeasurerDispT<T>::get_extendObject2()
{
  _TDispID _dispid(*this, OLETEXT("extendObject2"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMeasurerDispT<T>::SetObject1(LPDISPATCH obj)
{
  _TDispID _dispid(*this, OLETEXT("SetObject1"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMeasurerDispT<T>::SetObject2(LPDISPATCH obj)
{
  _TDispID _dispid(*this, OLETEXT("SetObject2"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMeasurerDispT<T>::GetObject1()
{
  _TDispID _dispid(*this, OLETEXT("GetObject1"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMeasurerDispT<T>::GetObject2()
{
  _TDispID _dispid(*this, OLETEXT("GetObject2"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMeasurerDispT<T>::Calc()
{
  _TDispID _dispid(*this, OLETEXT("Calc"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMeasurerDispT<T>::IsAngleValid()
{
  _TDispID _dispid(*this, OLETEXT("IsAngleValid"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMeasurerDispT<T>::get_angle()
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMeasurerDispT<T>::get_distance()
{
  _TDispID _dispid(*this, OLETEXT("distance"), DISPID(11));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMeasurerDispT<T>::GetPoint1(double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetPoint1"), DISPID(12));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  _args[3] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMeasurerDispT<T>::GetPoint2(double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetPoint2"), DISPID(13));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  _args[3] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMeasurerDispT<T>::get_MaxDistance()
{
  _TDispID _dispid(*this, OLETEXT("MaxDistance"), DISPID(14));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksMeasurerDispT<T>::get_NormalDistance()
{
  _TDispID _dispid(*this, OLETEXT("NormalDistance"), DISPID(15));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMeasurerDispT<T>::GetMaxPoint1(double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetMaxPoint1"), DISPID(16));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  _args[3] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMeasurerDispT<T>::GetMaxPoint2(double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetMaxPoint2"), DISPID(17));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  _args[3] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMeasurerDispT<T>::GetNormalPoint1(double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetNormalPoint1"), DISPID(18));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  _args[3] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMeasurerDispT<T>::GetNormalPoint2(double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetNormalPoint2"), DISPID(19));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  _args[3] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksMeasurerDispT<T>::get_MeasureResult()
{
  _TDispID _dispid(*this, OLETEXT("MeasureResult"), DISPID(20));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksBodyCollection
// Flags:     (4096) Dispatchable
// GUID:      {CFC49C01-7653-4845-93FD-13428F5D58EC}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksBodyCollectionDispT<T>::refresh()
{
  _TDispID _dispid(*this, OLETEXT("refresh"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksBodyCollectionDispT<T>::GetCount()
{
  _TDispID _dispid(*this, OLETEXT("GetCount"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBodyCollectionDispT<T>::First()
{
  _TDispID _dispid(*this, OLETEXT("First"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBodyCollectionDispT<T>::Last()
{
  _TDispID _dispid(*this, OLETEXT("Last"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBodyCollectionDispT<T>::Next()
{
  _TDispID _dispid(*this, OLETEXT("Next"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBodyCollectionDispT<T>::Prev()
{
  _TDispID _dispid(*this, OLETEXT("Prev"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBodyCollectionDispT<T>::GetByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetByIndex"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksBodyCollectionDispT<T>::FindIt(LPDISPATCH entity)
{
  _TDispID _dispid(*this, OLETEXT("FindIt"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBodyCollectionDispT<T>::Clear()
{
  _TDispID _dispid(*this, OLETEXT("Clear"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBodyCollectionDispT<T>::Add(LPDISPATCH body)
{
  _TDispID _dispid(*this, OLETEXT("Add"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = body /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBodyCollectionDispT<T>::AddAt(LPDISPATCH body, long index)
{
  _TDispID _dispid(*this, OLETEXT("AddAt"), DISPID(11));
  TAutoArgs<2> _args;
  _args[1] = body /*[VT_DISPATCH:0]*/;
  _args[2] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBodyCollectionDispT<T>::AddBefore(LPDISPATCH body, LPDISPATCH base)
{
  _TDispID _dispid(*this, OLETEXT("AddBefore"), DISPID(12));
  TAutoArgs<2> _args;
  _args[1] = body /*[VT_DISPATCH:0]*/;
  _args[2] = base /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBodyCollectionDispT<T>::DetachByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("DetachByIndex"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBodyCollectionDispT<T>::DetachByBody(LPDISPATCH body)
{
  _TDispID _dispid(*this, OLETEXT("DetachByBody"), DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = body /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBodyCollectionDispT<T>::SetByIndex(LPDISPATCH body, long index)
{
  _TDispID _dispid(*this, OLETEXT("SetByIndex"), DISPID(15));
  TAutoArgs<2> _args;
  _args[1] = body /*[VT_DISPATCH:0]*/;
  _args[2] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksBody
// Flags:     (4096) Dispatchable
// GUID:      {03EFC9DD-E05A-4277-BC7C-4FD499A252DE}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksBodyDispT<T>::GetGabarit(double* x1, double* y1, double* z1, double* x2, double* y2, double* z2)
{
  _TDispID _dispid(*this, OLETEXT("GetGabarit"), DISPID(1));
  TAutoArgs<6> _args;
  _args[1] = x1 /*[VT_R8:1]*/;
  _args[2] = y1 /*[VT_R8:1]*/;
  _args[3] = z1 /*[VT_R8:1]*/;
  _args[4] = x2 /*[VT_R8:1]*/;
  _args[5] = y2 /*[VT_R8:1]*/;
  _args[6] = z2 /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBodyDispT<T>::FaceCollection()
{
  _TDispID _dispid(*this, OLETEXT("FaceCollection"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBodyDispT<T>::IsSolid()
{
  _TDispID _dispid(*this, OLETEXT("IsSolid"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBodyDispT<T>::CalcMassInertiaProperties(unsigned_long bitVector)
{
  _TDispID _dispid(*this, OLETEXT("CalcMassInertiaProperties"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = bitVector /*[VT_UI4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBodyDispT<T>::CurveIntersection(LPDISPATCH curve, LPDISPATCH fases, LPDISPATCH points)
{
  _TDispID _dispid(*this, OLETEXT("CurveIntersection"), DISPID(5));
  TAutoArgs<3> _args;
  _args[1] = curve /*[VT_DISPATCH:0]*/;
  _args[2] = fases /*[VT_DISPATCH:0]*/;
  _args[3] = points /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBodyDispT<T>::CheckIntersectionWithBody(LPDISPATCH otherBody, TOLEBOOL checkTangent)
{
  _TDispID _dispid(*this, OLETEXT("CheckIntersectionWithBody"), DISPID(6));
  TAutoArgs<2> _args;
  _args[1] = otherBody /*[VT_DISPATCH:0]*/;
  _args[2] = checkTangent /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBodyDispT<T>::get_MultiBodyParts()
{
  _TDispID _dispid(*this, OLETEXT("MultiBodyParts"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksBodyDispT<T>::GetFeature()
{
  _TDispID _dispid(*this, OLETEXT("GetFeature"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksBodyDispT<T>::GetIntersectionFacesWithBody(LPDISPATCH otherBody, TVariant* intersectionFaces1, 
                                             TVariant* intersectionFaces2, TVariant* connectedFaces1
                                             , TVariant* connectedFaces2)
{
  _TDispID _dispid(*this, OLETEXT("GetIntersectionFacesWithBody"), DISPID(9));
  TAutoArgs<5> _args;
  _args[1] = otherBody /*[VT_DISPATCH:0]*/;
  _args[2] = intersectionFaces1 /*[VT_VARIANT:1]*/;
  _args[3] = intersectionFaces2 /*[VT_VARIANT:1]*/;
  _args[4] = connectedFaces1 /*[VT_VARIANT:1]*/;
  _args[5] = connectedFaces2 /*[VT_VARIANT:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSurface
// Flags:     (4096) Dispatchable
// GUID:      {963CB6E1-B9BF-4234-964A-13BFE6C0282A}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::GetGabarit(double* x1, double* y1, double* z1, double* x2, double* y2, double* z2)
{
  _TDispID _dispid(*this, OLETEXT("GetGabarit"), DISPID(1));
  TAutoArgs<6> _args;
  _args[1] = x1 /*[VT_R8:1]*/;
  _args[2] = y1 /*[VT_R8:1]*/;
  _args[3] = z1 /*[VT_R8:1]*/;
  _args[4] = x2 /*[VT_R8:1]*/;
  _args[5] = y2 /*[VT_R8:1]*/;
  _args[6] = z2 /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::GetPoint(double paramU, double paramV, double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetPoint"), DISPID(2));
  TAutoArgs<5> _args;
  _args[1] = paramU /*[VT_R8:0]*/;
  _args[2] = paramV /*[VT_R8:0]*/;
  _args[3] = x /*[VT_R8:1]*/;
  _args[4] = y /*[VT_R8:1]*/;
  _args[5] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::GetNormal(double paramU, double paramV, double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetNormal"), DISPID(3));
  TAutoArgs<5> _args;
  _args[1] = paramU /*[VT_R8:0]*/;
  _args[2] = paramV /*[VT_R8:0]*/;
  _args[3] = x /*[VT_R8:1]*/;
  _args[4] = y /*[VT_R8:1]*/;
  _args[5] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::GetTangentVectorU(double paramU, double paramV, double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetTangentVectorU"), DISPID(4));
  TAutoArgs<5> _args;
  _args[1] = paramU /*[VT_R8:0]*/;
  _args[2] = paramV /*[VT_R8:0]*/;
  _args[3] = x /*[VT_R8:1]*/;
  _args[4] = y /*[VT_R8:1]*/;
  _args[5] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::GetTangentVectorV(double paramU, double paramV, double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetTangentVectorV"), DISPID(5));
  TAutoArgs<5> _args;
  _args[1] = paramU /*[VT_R8:0]*/;
  _args[2] = paramV /*[VT_R8:0]*/;
  _args[3] = x /*[VT_R8:1]*/;
  _args[4] = y /*[VT_R8:1]*/;
  _args[5] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::GetDerivativeU(double paramU, double paramV, double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetDerivativeU"), DISPID(6));
  TAutoArgs<5> _args;
  _args[1] = paramU /*[VT_R8:0]*/;
  _args[2] = paramV /*[VT_R8:0]*/;
  _args[3] = x /*[VT_R8:1]*/;
  _args[4] = y /*[VT_R8:1]*/;
  _args[5] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::GetDerivativeV(double paramU, double paramV, double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetDerivativeV"), DISPID(7));
  TAutoArgs<5> _args;
  _args[1] = paramU /*[VT_R8:0]*/;
  _args[2] = paramV /*[VT_R8:0]*/;
  _args[3] = x /*[VT_R8:1]*/;
  _args[4] = y /*[VT_R8:1]*/;
  _args[5] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::GetDerivativeUU(double paramU, double paramV, double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetDerivativeUU"), DISPID(8));
  TAutoArgs<5> _args;
  _args[1] = paramU /*[VT_R8:0]*/;
  _args[2] = paramV /*[VT_R8:0]*/;
  _args[3] = x /*[VT_R8:1]*/;
  _args[4] = y /*[VT_R8:1]*/;
  _args[5] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::GetDerivativeVV(double paramU, double paramV, double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetDerivativeVV"), DISPID(9));
  TAutoArgs<5> _args;
  _args[1] = paramU /*[VT_R8:0]*/;
  _args[2] = paramV /*[VT_R8:0]*/;
  _args[3] = x /*[VT_R8:1]*/;
  _args[4] = y /*[VT_R8:1]*/;
  _args[5] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::GetDerivativeUV(double paramU, double paramV, double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetDerivativeUV"), DISPID(10));
  TAutoArgs<5> _args;
  _args[1] = paramU /*[VT_R8:0]*/;
  _args[2] = paramV /*[VT_R8:0]*/;
  _args[3] = x /*[VT_R8:1]*/;
  _args[4] = y /*[VT_R8:1]*/;
  _args[5] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::GetDerivativeUUU(double paramU, double paramV, double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetDerivativeUUU"), DISPID(11));
  TAutoArgs<5> _args;
  _args[1] = paramU /*[VT_R8:0]*/;
  _args[2] = paramV /*[VT_R8:0]*/;
  _args[3] = x /*[VT_R8:1]*/;
  _args[4] = y /*[VT_R8:1]*/;
  _args[5] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::GetDerivativeVVV(double paramU, double paramV, double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetDerivativeVVV"), DISPID(12));
  TAutoArgs<5> _args;
  _args[1] = paramU /*[VT_R8:0]*/;
  _args[2] = paramV /*[VT_R8:0]*/;
  _args[3] = x /*[VT_R8:1]*/;
  _args[4] = y /*[VT_R8:1]*/;
  _args[5] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::GetDerivativeUVV(double paramU, double paramV, double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetDerivativeUVV"), DISPID(13));
  TAutoArgs<5> _args;
  _args[1] = paramU /*[VT_R8:0]*/;
  _args[2] = paramV /*[VT_R8:0]*/;
  _args[3] = x /*[VT_R8:1]*/;
  _args[4] = y /*[VT_R8:1]*/;
  _args[5] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::GetDerivativeUUV(double paramU, double paramV, double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetDerivativeUUV"), DISPID(14));
  TAutoArgs<5> _args;
  _args[1] = paramU /*[VT_R8:0]*/;
  _args[2] = paramV /*[VT_R8:0]*/;
  _args[3] = x /*[VT_R8:1]*/;
  _args[4] = y /*[VT_R8:1]*/;
  _args[5] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksSurfaceDispT<T>::GetParamUMin()
{
  _TDispID _dispid(*this, OLETEXT("GetParamUMin"), DISPID(15));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksSurfaceDispT<T>::GetParamUMax()
{
  _TDispID _dispid(*this, OLETEXT("GetParamUMax"), DISPID(16));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksSurfaceDispT<T>::GetParamVMin()
{
  _TDispID _dispid(*this, OLETEXT("GetParamVMin"), DISPID(17));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksSurfaceDispT<T>::GetParamVMax()
{
  _TDispID _dispid(*this, OLETEXT("GetParamVMax"), DISPID(18));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::IsClosedU()
{
  _TDispID _dispid(*this, OLETEXT("IsClosedU"), DISPID(19));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::IsClosedV()
{
  _TDispID _dispid(*this, OLETEXT("IsClosedV"), DISPID(20));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::IsPlane()
{
  _TDispID _dispid(*this, OLETEXT("IsPlane"), DISPID(21));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::IsCone()
{
  _TDispID _dispid(*this, OLETEXT("IsCone"), DISPID(22));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::IsCylinder()
{
  _TDispID _dispid(*this, OLETEXT("IsCylinder"), DISPID(23));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::IsTorus()
{
  _TDispID _dispid(*this, OLETEXT("IsTorus"), DISPID(24));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::IsSphere()
{
  _TDispID _dispid(*this, OLETEXT("IsSphere"), DISPID(25));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::IsNurbsSurface()
{
  _TDispID _dispid(*this, OLETEXT("IsNurbsSurface"), DISPID(26));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::IsRevolved()
{
  _TDispID _dispid(*this, OLETEXT("IsRevolved"), DISPID(27));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::IsSwept()
{
  _TDispID _dispid(*this, OLETEXT("IsSwept"), DISPID(28));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSurfaceDispT<T>::GetSurfaceParam()
{
  _TDispID _dispid(*this, OLETEXT("GetSurfaceParam"), DISPID(29));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksSurfaceDispT<T>::GetArea(unsigned_long bitVector)
{
  _TDispID _dispid(*this, OLETEXT("GetArea"), DISPID(30));
  TAutoArgs<1> _args;
  _args[1] = bitVector /*[VT_UI4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::NearPointProjection(double x, double y, double z, double* u, double* v, 
                                       TOLEBOOL ext)
{
  _TDispID _dispid(*this, OLETEXT("NearPointProjection"), DISPID(31));
  TAutoArgs<6> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = z /*[VT_R8:0]*/;
  _args[4] = u /*[VT_R8:1]*/;
  _args[5] = v /*[VT_R8:1]*/;
  _args[6] = ext /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::CurveIntersection(LPDISPATCH curve, LPDISPATCH points, TOLEBOOL extSurf, 
                                     TOLEBOOL extCurve)
{
  _TDispID _dispid(*this, OLETEXT("CurveIntersection"), DISPID(32));
  TAutoArgs<4> _args;
  _args[1] = curve /*[VT_DISPATCH:0]*/;
  _args[2] = points /*[VT_DISPATCH:0]*/;
  _args[3] = extSurf /*[VT_BOOL:0]*/;
  _args[4] = extCurve /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSurfaceDispT<T>::GetNurbsSurfaceParam()
{
  _TDispID _dispid(*this, OLETEXT("GetNurbsSurfaceParam"), DISPID(33));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSurfaceDispT<T>::GetBoundaryUVNurbs(TOLEBOOL uv, TOLEBOOL closed, long loopIndex, long edgeIndex, 
                                      long* degree, TVariant* points, TVariant* weights, 
                                      TVariant* knots, double* tMin, double* tMax)
{
  _TDispID _dispid(*this, OLETEXT("GetBoundaryUVNurbs"), DISPID(34));
  TAutoArgs<10> _args;
  _args[1] = uv /*[VT_BOOL:0]*/;
  _args[2] = closed /*[VT_BOOL:0]*/;
  _args[3] = loopIndex /*[VT_I4:0]*/;
  _args[4] = edgeIndex /*[VT_I4:0]*/;
  _args[5] = degree /*[VT_I4:1]*/;
  _args[6] = points /*[VT_VARIANT:1]*/;
  _args[7] = weights /*[VT_VARIANT:1]*/;
  _args[8] = knots /*[VT_VARIANT:1]*/;
  _args[9] = tMin /*[VT_R8:1]*/;
  _args[10] = tMax /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSurfaceDispT<T>::get_BoundaryCount()
{
  _TDispID _dispid(*this, OLETEXT("BoundaryCount"), DISPID(35));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSurfaceDispT<T>::GetEdgesCount(long loopIndex)
{
  _TDispID _dispid(*this, OLETEXT("GetEdgesCount"), DISPID(36));
  TAutoArgs<1> _args;
  _args[1] = loopIndex /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksEdgeCollection
// Flags:     (4096) Dispatchable
// GUID:      {6096A4FD-970B-468C-815E-37CA1970A203}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksEdgeCollectionDispT<T>::refresh()
{
  _TDispID _dispid(*this, OLETEXT("refresh"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksEdgeCollectionDispT<T>::GetCount()
{
  _TDispID _dispid(*this, OLETEXT("GetCount"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEdgeCollectionDispT<T>::First()
{
  _TDispID _dispid(*this, OLETEXT("First"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEdgeCollectionDispT<T>::Last()
{
  _TDispID _dispid(*this, OLETEXT("Last"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEdgeCollectionDispT<T>::Next()
{
  _TDispID _dispid(*this, OLETEXT("Next"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEdgeCollectionDispT<T>::Prev()
{
  _TDispID _dispid(*this, OLETEXT("Prev"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEdgeCollectionDispT<T>::GetByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetByIndex"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksEdgeCollectionDispT<T>::FindIt(LPDISPATCH entity)
{
  _TDispID _dispid(*this, OLETEXT("FindIt"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksOrientedEdge
// Flags:     (4096) Dispatchable
// GUID:      {88C32A80-3735-4E18-A02E-9B2A8F0A90E3}
// *********************************************************************//
template <class T> LPDISPATCH __fastcall
ksOrientedEdgeDispT<T>::GetEdge()
{
  _TDispID _dispid(*this, OLETEXT("GetEdge"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksOrientedEdgeDispT<T>::GetOrientation()
{
  _TDispID _dispid(*this, OLETEXT("GetOrientation"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksOrientedEdgeDispT<T>::GetOwnerEntity()
{
  _TDispID _dispid(*this, OLETEXT("GetOwnerEntity"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksOrientedEdgeDispT<T>::GetNext()
{
  _TDispID _dispid(*this, OLETEXT("GetNext"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksOrientedEdgeDispT<T>::GetSameSense()
{
  _TDispID _dispid(*this, OLETEXT("GetSameSense"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksOrientedEdgeDispT<T>::GetAdjacentFace(long facePlus)
{
  _TDispID _dispid(*this, OLETEXT("GetAdjacentFace"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = facePlus /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksOrientedEdgeCollection
// Flags:     (4096) Dispatchable
// GUID:      {5CE8909D-CF3D-418F-A9B9-0A12B23916C0}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksOrientedEdgeCollectionDispT<T>::refresh()
{
  _TDispID _dispid(*this, OLETEXT("refresh"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksOrientedEdgeCollectionDispT<T>::GetCount()
{
  _TDispID _dispid(*this, OLETEXT("GetCount"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksOrientedEdgeCollectionDispT<T>::First()
{
  _TDispID _dispid(*this, OLETEXT("First"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksOrientedEdgeCollectionDispT<T>::Last()
{
  _TDispID _dispid(*this, OLETEXT("Last"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksOrientedEdgeCollectionDispT<T>::Next()
{
  _TDispID _dispid(*this, OLETEXT("Next"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksOrientedEdgeCollectionDispT<T>::Prev()
{
  _TDispID _dispid(*this, OLETEXT("Prev"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksOrientedEdgeCollectionDispT<T>::GetByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetByIndex"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksOrientedEdgeCollectionDispT<T>::FindIt(LPDISPATCH entity)
{
  _TDispID _dispid(*this, OLETEXT("FindIt"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksLoop
// Flags:     (4096) Dispatchable
// GUID:      {22BC5C86-CF58-45E4-AA46-5E8D5A825798}
// *********************************************************************//
template <class T> LPDISPATCH __fastcall
ksLoopDispT<T>::OrientedEdgeCollection(LPDISPATCH edge)
{
  _TDispID _dispid(*this, OLETEXT("OrientedEdgeCollection"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = edge /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksLoopDispT<T>::EdgeCollection()
{
  _TDispID _dispid(*this, OLETEXT("EdgeCollection"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksLoopDispT<T>::IsOuter()
{
  _TDispID _dispid(*this, OLETEXT("IsOuter"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksLoopDispT<T>::GetLength(unsigned_long bitVector)
{
  _TDispID _dispid(*this, OLETEXT("GetLength"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = bitVector /*[VT_UI4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksLoopCollection
// Flags:     (4096) Dispatchable
// GUID:      {1BD7207E-36AA-47DF-913E-AD26DE6C16E8}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksLoopCollectionDispT<T>::refresh()
{
  _TDispID _dispid(*this, OLETEXT("refresh"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksLoopCollectionDispT<T>::GetCount()
{
  _TDispID _dispid(*this, OLETEXT("GetCount"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksLoopCollectionDispT<T>::First()
{
  _TDispID _dispid(*this, OLETEXT("First"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksLoopCollectionDispT<T>::Last()
{
  _TDispID _dispid(*this, OLETEXT("Last"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksLoopCollectionDispT<T>::Next()
{
  _TDispID _dispid(*this, OLETEXT("Next"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksLoopCollectionDispT<T>::Prev()
{
  _TDispID _dispid(*this, OLETEXT("Prev"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksLoopCollectionDispT<T>::GetByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetByIndex"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCurve3D
// Flags:     (4096) Dispatchable
// GUID:      {7572648A-D4EE-41FE-8D74-EC7D1F91BDE2}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksCurve3DDispT<T>::GetPoint(double paramT, double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetPoint"), DISPID(1));
  TAutoArgs<4> _args;
  _args[1] = paramT /*[VT_R8:0]*/;
  _args[2] = x /*[VT_R8:1]*/;
  _args[3] = y /*[VT_R8:1]*/;
  _args[4] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurve3DDispT<T>::GetTangentVector(double paramT, double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetTangentVector"), DISPID(2));
  TAutoArgs<4> _args;
  _args[1] = paramT /*[VT_R8:0]*/;
  _args[2] = x /*[VT_R8:1]*/;
  _args[3] = y /*[VT_R8:1]*/;
  _args[4] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurve3DDispT<T>::GetNormal(double paramT, double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetNormal"), DISPID(3));
  TAutoArgs<4> _args;
  _args[1] = paramT /*[VT_R8:0]*/;
  _args[2] = x /*[VT_R8:1]*/;
  _args[3] = y /*[VT_R8:1]*/;
  _args[4] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurve3DDispT<T>::GetDerivativeT(double paramT, double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetDerivativeT"), DISPID(4));
  TAutoArgs<4> _args;
  _args[1] = paramT /*[VT_R8:0]*/;
  _args[2] = x /*[VT_R8:1]*/;
  _args[3] = y /*[VT_R8:1]*/;
  _args[4] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurve3DDispT<T>::GetDerivativeTT(double paramT, double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetDerivativeTT"), DISPID(5));
  TAutoArgs<4> _args;
  _args[1] = paramT /*[VT_R8:0]*/;
  _args[2] = x /*[VT_R8:1]*/;
  _args[3] = y /*[VT_R8:1]*/;
  _args[4] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurve3DDispT<T>::GetDerivativeTTT(double paramT, double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetDerivativeTTT"), DISPID(6));
  TAutoArgs<4> _args;
  _args[1] = paramT /*[VT_R8:0]*/;
  _args[2] = x /*[VT_R8:1]*/;
  _args[3] = y /*[VT_R8:1]*/;
  _args[4] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksCurve3DDispT<T>::GetParamMin()
{
  _TDispID _dispid(*this, OLETEXT("GetParamMin"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksCurve3DDispT<T>::GetParamMax()
{
  _TDispID _dispid(*this, OLETEXT("GetParamMax"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurve3DDispT<T>::IsClosed()
{
  _TDispID _dispid(*this, OLETEXT("IsClosed"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurve3DDispT<T>::IsPeriodic()
{
  _TDispID _dispid(*this, OLETEXT("IsPeriodic"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksCurve3DDispT<T>::GetMetricLength(double startParam, double endParam)
{
  _TDispID _dispid(*this, OLETEXT("GetMetricLength"), DISPID(11));
  TAutoArgs<2> _args;
  _args[1] = startParam /*[VT_R8:0]*/;
  _args[2] = endParam /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurve3DDispT<T>::GetGabarit(double* x1, double* y1, double* z1, double* x2, double* y2, double* z2)
{
  _TDispID _dispid(*this, OLETEXT("GetGabarit"), DISPID(12));
  TAutoArgs<6> _args;
  _args[1] = x1 /*[VT_R8:1]*/;
  _args[2] = y1 /*[VT_R8:1]*/;
  _args[3] = z1 /*[VT_R8:1]*/;
  _args[4] = x2 /*[VT_R8:1]*/;
  _args[5] = y2 /*[VT_R8:1]*/;
  _args[6] = z2 /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurve3DDispT<T>::IsDegenerate()
{
  _TDispID _dispid(*this, OLETEXT("IsDegenerate"), DISPID(13));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurve3DDispT<T>::IsPlanar()
{
  _TDispID _dispid(*this, OLETEXT("IsPlanar"), DISPID(14));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurve3DDispT<T>::IsLineSeg()
{
  _TDispID _dispid(*this, OLETEXT("IsLineSeg"), DISPID(15));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurve3DDispT<T>::IsArc()
{
  _TDispID _dispid(*this, OLETEXT("IsArc"), DISPID(16));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurve3DDispT<T>::IsCircle()
{
  _TDispID _dispid(*this, OLETEXT("IsCircle"), DISPID(17));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurve3DDispT<T>::IsEllipse()
{
  _TDispID _dispid(*this, OLETEXT("IsEllipse"), DISPID(18));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurve3DDispT<T>::IsNurbs()
{
  _TDispID _dispid(*this, OLETEXT("IsNurbs"), DISPID(19));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCurve3DDispT<T>::GetCurveParam()
{
  _TDispID _dispid(*this, OLETEXT("GetCurveParam"), DISPID(20));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksCurve3DDispT<T>::GetLength(unsigned_long bitVector)
{
  _TDispID _dispid(*this, OLETEXT("GetLength"), DISPID(21));
  TAutoArgs<1> _args;
  _args[1] = bitVector /*[VT_UI4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCurve3DDispT<T>::NearPointProjection(double x, double y, double z, double* t, TOLEBOOL ext)
{
  _TDispID _dispid(*this, OLETEXT("NearPointProjection"), DISPID(22));
  TAutoArgs<5> _args;
  _args[1] = x /*[VT_R8:0]*/;
  _args[2] = y /*[VT_R8:0]*/;
  _args[3] = z /*[VT_R8:0]*/;
  _args[4] = t /*[VT_R8:1]*/;
  _args[5] = ext /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCurve3DDispT<T>::GetNurbs3dParam()
{
  _TDispID _dispid(*this, OLETEXT("GetNurbs3dParam"), DISPID(23));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TVariant __fastcall
ksCurve3DDispT<T>::CalculatePolygon(double step)
{
  _TDispID _dispid(*this, OLETEXT("CalculatePolygon"), DISPID(24));
  TAutoArgs<1> _args;
  _args[1] = step /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksLineSeg3dParam
// Flags:     (4096) Dispatchable
// GUID:      {DC8F6A7B-FF16-46FF-986D-2F7E1F6B25C4}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksLineSeg3dParamDispT<T>::GetPointFirst(double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetPointFirst"), DISPID(1));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  _args[3] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksLineSeg3dParamDispT<T>::GetPointLast(double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetPointLast"), DISPID(2));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  _args[3] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCircle3dParam
// Flags:     (4096) Dispatchable
// GUID:      {82758442-C9EB-48F7-B304-083C5E64D4E0}
// *********************************************************************//
template <class T> double __fastcall
ksCircle3dParamDispT<T>::get_radius()
{
  _TDispID _dispid(*this, OLETEXT("radius"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCircle3dParamDispT<T>::GetPlacement()
{
  _TDispID _dispid(*this, OLETEXT("GetPlacement"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksEllipse3dParam
// Flags:     (4096) Dispatchable
// GUID:      {5B8082B8-6AD3-4509-826D-D23B7F613213}
// *********************************************************************//
template <class T> double __fastcall
ksEllipse3dParamDispT<T>::get_majorRadius()
{
  _TDispID _dispid(*this, OLETEXT("majorRadius"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksEllipse3dParamDispT<T>::get_minorRadius()
{
  _TDispID _dispid(*this, OLETEXT("minorRadius"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksEllipse3dParamDispT<T>::GetPlacement()
{
  _TDispID _dispid(*this, OLETEXT("GetPlacement"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksPlaneParam
// Flags:     (4096) Dispatchable
// GUID:      {6A6F6B95-D100-4D54-A430-70A42D342917}
// *********************************************************************//
template <class T> LPDISPATCH __fastcall
ksPlaneParamDispT<T>::GetPlacement()
{
  _TDispID _dispid(*this, OLETEXT("GetPlacement"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksConeParam
// Flags:     (4096) Dispatchable
// GUID:      {CCFA0D95-0834-4F92-988B-6E477AD67589}
// *********************************************************************//
template <class T> double __fastcall
ksConeParamDispT<T>::get_radius()
{
  _TDispID _dispid(*this, OLETEXT("radius"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksConeParamDispT<T>::get_height()
{
  _TDispID _dispid(*this, OLETEXT("height"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksConeParamDispT<T>::get_angle()
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksConeParamDispT<T>::GetPlacement()
{
  _TDispID _dispid(*this, OLETEXT("GetPlacement"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCylinderParam
// Flags:     (4096) Dispatchable
// GUID:      {5D462836-CF69-4995-AB78-8C7A83D09BD7}
// *********************************************************************//
template <class T> double __fastcall
ksCylinderParamDispT<T>::get_radius()
{
  _TDispID _dispid(*this, OLETEXT("radius"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksCylinderParamDispT<T>::get_height()
{
  _TDispID _dispid(*this, OLETEXT("height"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksCylinderParamDispT<T>::GetPlacement()
{
  _TDispID _dispid(*this, OLETEXT("GetPlacement"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSphereParam
// Flags:     (4096) Dispatchable
// GUID:      {C32977F3-3CA7-4D56-8AE7-4963E6851B75}
// *********************************************************************//
template <class T> double __fastcall
ksSphereParamDispT<T>::get_radius()
{
  _TDispID _dispid(*this, OLETEXT("radius"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSphereParamDispT<T>::GetPlacement()
{
  _TDispID _dispid(*this, OLETEXT("GetPlacement"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksTorusParam
// Flags:     (4096) Dispatchable
// GUID:      {FDA3B147-BAF1-4F75-99AA-39D11323EA97}
// *********************************************************************//
template <class T> double __fastcall
ksTorusParamDispT<T>::get_radius()
{
  _TDispID _dispid(*this, OLETEXT("radius"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksTorusParamDispT<T>::get_generatrixRadius()
{
  _TDispID _dispid(*this, OLETEXT("generatrixRadius"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksTorusParamDispT<T>::GetPlacement()
{
  _TDispID _dispid(*this, OLETEXT("GetPlacement"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksNurbsPoint3dParam
// Flags:     (4096) Dispatchable
// GUID:      {F1CD604D-1D26-4F6B-8F94-F112133E6162}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksNurbsPoint3dParamDispT<T>::GetPoint(double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetPoint"), DISPID(1));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  _args[3] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksNurbsPoint3dParamDispT<T>::get_weight()
{
  _TDispID _dispid(*this, OLETEXT("weight"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksNurbsSurfaceParam
// Flags:     (4096) Dispatchable
// GUID:      {A12B63E8-9E0A-4854-B724-E18275B9FF20}
// *********************************************************************//
template <class T> short __fastcall
ksNurbsSurfaceParamDispT<T>::GetDegree(TOLEBOOL paramU)
{
  _TDispID _dispid(*this, OLETEXT("GetDegree"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = paramU /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsSurfaceParamDispT<T>::GetClose(TOLEBOOL paramU)
{
  _TDispID _dispid(*this, OLETEXT("GetClose"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = paramU /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksNurbsSurfaceParamDispT<T>::GetPointCollection()
{
  _TDispID _dispid(*this, OLETEXT("GetPointCollection"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksNurbsSurfaceParamDispT<T>::GetKnotCollection(TOLEBOOL paramU)
{
  _TDispID _dispid(*this, OLETEXT("GetKnotCollection"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = paramU /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsSurfaceParamDispT<T>::GetPeriodic(TOLEBOOL paramU)
{
  _TDispID _dispid(*this, OLETEXT("GetPeriodic"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = paramU /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsSurfaceParamDispT<T>::GetNurbsParams(TOLEBOOL closedV, TOLEBOOL closedU, long* degreeV, 
                                            long* degreeU, long* nPV, long* nPU, TVariant* points, 
                                            TVariant* weights, TVariant* knotsV, TVariant* knotsU)
{
  _TDispID _dispid(*this, OLETEXT("GetNurbsParams"), DISPID(6));
  TAutoArgs<10> _args;
  _args[1] = closedV /*[VT_BOOL:0]*/;
  _args[2] = closedU /*[VT_BOOL:0]*/;
  _args[3] = degreeV /*[VT_I4:1]*/;
  _args[4] = degreeU /*[VT_I4:1]*/;
  _args[5] = nPV /*[VT_I4:1]*/;
  _args[6] = nPU /*[VT_I4:1]*/;
  _args[7] = points /*[VT_VARIANT:1]*/;
  _args[8] = weights /*[VT_VARIANT:1]*/;
  _args[9] = knotsV /*[VT_VARIANT:1]*/;
  _args[10] = knotsU /*[VT_VARIANT:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsSurfaceParamDispT<T>::GetBoundaryUVNurbs(TOLEBOOL uv, TOLEBOOL closed, long loopIndex, 
                                                long edgeIndex, long* degree, TVariant* points, 
                                                TVariant* weights, TVariant* knots, double* tMin, 
                                                double* tMax)
{
  _TDispID _dispid(*this, OLETEXT("GetBoundaryUVNurbs"), DISPID(7));
  TAutoArgs<10> _args;
  _args[1] = uv /*[VT_BOOL:0]*/;
  _args[2] = closed /*[VT_BOOL:0]*/;
  _args[3] = loopIndex /*[VT_I4:0]*/;
  _args[4] = edgeIndex /*[VT_I4:0]*/;
  _args[5] = degree /*[VT_I4:1]*/;
  _args[6] = points /*[VT_VARIANT:1]*/;
  _args[7] = weights /*[VT_VARIANT:1]*/;
  _args[8] = knots /*[VT_VARIANT:1]*/;
  _args[9] = tMin /*[VT_R8:1]*/;
  _args[10] = tMax /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksNurbsSurfaceParamDispT<T>::GetBoundaryCount()
{
  _TDispID _dispid(*this, OLETEXT("GetBoundaryCount"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksNurbsSurfaceParamDispT<T>::GetEdgesCount(long loopIndex)
{
  _TDispID _dispid(*this, OLETEXT("GetEdgesCount"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = loopIndex /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsSurfaceParamDispT<T>::GetMinMaxParameters(TOLEBOOL closedV, TOLEBOOL closedU, double* uMin, 
                                                 double* uMax, double* vMin, double* vMax)
{
  _TDispID _dispid(*this, OLETEXT("GetMinMaxParameters"), DISPID(10));
  TAutoArgs<6> _args;
  _args[1] = closedV /*[VT_BOOL:0]*/;
  _args[2] = closedU /*[VT_BOOL:0]*/;
  _args[3] = uMin /*[VT_R8:1]*/;
  _args[4] = uMax /*[VT_R8:1]*/;
  _args[5] = vMin /*[VT_R8:1]*/;
  _args[6] = vMax /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksNurbs3dParam
// Flags:     (4096) Dispatchable
// GUID:      {4DDDAEDB-2819-42D9-BDBB-4CCBC98D76DF}
// *********************************************************************//
template <class T> short __fastcall
ksNurbs3dParamDispT<T>::get_degree()
{
  _TDispID _dispid(*this, OLETEXT("degree"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbs3dParamDispT<T>::get_close()
{
  _TDispID _dispid(*this, OLETEXT("close"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksNurbs3dParamDispT<T>::GetPointCollection()
{
  _TDispID _dispid(*this, OLETEXT("GetPointCollection"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksNurbs3dParamDispT<T>::GetKnotCollection()
{
  _TDispID _dispid(*this, OLETEXT("GetKnotCollection"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbs3dParamDispT<T>::get_periodic()
{
  _TDispID _dispid(*this, OLETEXT("periodic"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbs3dParamDispT<T>::GetNurbsPoints3DParams(TOLEBOOL closed, TVariant* points, TVariant* weights
                                               , TVariant* knots)
{
  _TDispID _dispid(*this, OLETEXT("GetNurbsPoints3DParams"), DISPID(6));
  TAutoArgs<4> _args;
  _args[1] = closed /*[VT_BOOL:0]*/;
  _args[2] = points /*[VT_VARIANT:1]*/;
  _args[3] = weights /*[VT_VARIANT:1]*/;
  _args[4] = knots /*[VT_VARIANT:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbs3dParamDispT<T>::GetMinMaxParameters(TOLEBOOL closed, double* tMin, double* tMax)
{
  _TDispID _dispid(*this, OLETEXT("GetMinMaxParameters"), DISPID(7));
  TAutoArgs<3> _args;
  _args[1] = closed /*[VT_BOOL:0]*/;
  _args[2] = tMin /*[VT_R8:1]*/;
  _args[3] = tMax /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksNurbsKnotCollection
// Flags:     (4096) Dispatchable
// GUID:      {483E9889-E1CA-4CA5-BE4E-ECB3D5CF0126}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksNurbsKnotCollectionDispT<T>::refresh()
{
  _TDispID _dispid(*this, OLETEXT("refresh"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksNurbsKnotCollectionDispT<T>::GetCount()
{
  _TDispID _dispid(*this, OLETEXT("GetCount"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksNurbsKnotCollectionDispT<T>::First()
{
  _TDispID _dispid(*this, OLETEXT("First"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksNurbsKnotCollectionDispT<T>::Last()
{
  _TDispID _dispid(*this, OLETEXT("Last"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksNurbsKnotCollectionDispT<T>::Next()
{
  _TDispID _dispid(*this, OLETEXT("Next"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksNurbsKnotCollectionDispT<T>::Prev()
{
  _TDispID _dispid(*this, OLETEXT("Prev"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksNurbsKnotCollectionDispT<T>::GetByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetByIndex"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsKnotCollectionDispT<T>::Clear()
{
  _TDispID _dispid(*this, OLETEXT("Clear"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsKnotCollectionDispT<T>::Add(double entity)
{
  _TDispID _dispid(*this, OLETEXT("Add"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = entity /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsKnotCollectionDispT<T>::AddAt(double entity, long index)
{
  _TDispID _dispid(*this, OLETEXT("AddAt"), DISPID(10));
  TAutoArgs<2> _args;
  _args[1] = entity /*[VT_R8:0]*/;
  _args[2] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsKnotCollectionDispT<T>::AddBefore(double entity, double base)
{
  _TDispID _dispid(*this, OLETEXT("AddBefore"), DISPID(11));
  TAutoArgs<2> _args;
  _args[1] = entity /*[VT_R8:0]*/;
  _args[2] = base /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsKnotCollectionDispT<T>::DetachByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("DetachByIndex"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsKnotCollectionDispT<T>::DetachByBody(double entity)
{
  _TDispID _dispid(*this, OLETEXT("DetachByBody"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = entity /*[VT_R8:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsKnotCollectionDispT<T>::SetByIndex(double entity, long index)
{
  _TDispID _dispid(*this, OLETEXT("SetByIndex"), DISPID(14));
  TAutoArgs<2> _args;
  _args[1] = entity /*[VT_R8:0]*/;
  _args[2] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksNurbsPoint3dCollCollection
// Flags:     (4096) Dispatchable
// GUID:      {84AF9C81-1795-4631-B58A-101732262E75}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksNurbsPoint3dCollCollectionDispT<T>::refresh()
{
  _TDispID _dispid(*this, OLETEXT("refresh"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksNurbsPoint3dCollCollectionDispT<T>::GetCount()
{
  _TDispID _dispid(*this, OLETEXT("GetCount"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksNurbsPoint3dCollCollectionDispT<T>::First()
{
  _TDispID _dispid(*this, OLETEXT("First"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksNurbsPoint3dCollCollectionDispT<T>::Last()
{
  _TDispID _dispid(*this, OLETEXT("Last"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksNurbsPoint3dCollCollectionDispT<T>::Next()
{
  _TDispID _dispid(*this, OLETEXT("Next"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksNurbsPoint3dCollCollectionDispT<T>::Prev()
{
  _TDispID _dispid(*this, OLETEXT("Prev"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksNurbsPoint3dCollCollectionDispT<T>::GetByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetByIndex"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsPoint3dCollCollectionDispT<T>::Clear()
{
  _TDispID _dispid(*this, OLETEXT("Clear"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsPoint3dCollCollectionDispT<T>::Add(LPDISPATCH entity)
{
  _TDispID _dispid(*this, OLETEXT("Add"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsPoint3dCollCollectionDispT<T>::AddAt(LPDISPATCH entity, long index)
{
  _TDispID _dispid(*this, OLETEXT("AddAt"), DISPID(10));
  TAutoArgs<2> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  _args[2] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsPoint3dCollCollectionDispT<T>::AddBefore(LPDISPATCH entity, LPDISPATCH base)
{
  _TDispID _dispid(*this, OLETEXT("AddBefore"), DISPID(11));
  TAutoArgs<2> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  _args[2] = base /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsPoint3dCollCollectionDispT<T>::DetachByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("DetachByIndex"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsPoint3dCollCollectionDispT<T>::DetachByBody(LPDISPATCH entity)
{
  _TDispID _dispid(*this, OLETEXT("DetachByBody"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsPoint3dCollCollectionDispT<T>::SetByIndex(LPDISPATCH entity, long index)
{
  _TDispID _dispid(*this, OLETEXT("SetByIndex"), DISPID(14));
  TAutoArgs<2> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  _args[2] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksNurbsPoint3dCollCollectionDispT<T>::FindIt(LPDISPATCH entity)
{
  _TDispID _dispid(*this, OLETEXT("FindIt"), DISPID(15));
  TAutoArgs<1> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksNurbsPoint3dCollection
// Flags:     (4096) Dispatchable
// GUID:      {3AD5E519-74E2-4D3B-B6A3-B1E81F1006F1}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksNurbsPoint3dCollectionDispT<T>::refresh()
{
  _TDispID _dispid(*this, OLETEXT("refresh"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksNurbsPoint3dCollectionDispT<T>::GetCount()
{
  _TDispID _dispid(*this, OLETEXT("GetCount"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksNurbsPoint3dCollectionDispT<T>::First()
{
  _TDispID _dispid(*this, OLETEXT("First"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksNurbsPoint3dCollectionDispT<T>::Last()
{
  _TDispID _dispid(*this, OLETEXT("Last"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksNurbsPoint3dCollectionDispT<T>::Next()
{
  _TDispID _dispid(*this, OLETEXT("Next"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksNurbsPoint3dCollectionDispT<T>::Prev()
{
  _TDispID _dispid(*this, OLETEXT("Prev"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksNurbsPoint3dCollectionDispT<T>::GetByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetByIndex"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsPoint3dCollectionDispT<T>::Clear()
{
  _TDispID _dispid(*this, OLETEXT("Clear"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsPoint3dCollectionDispT<T>::Add(LPDISPATCH entity)
{
  _TDispID _dispid(*this, OLETEXT("Add"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsPoint3dCollectionDispT<T>::AddAt(LPDISPATCH entity, long index)
{
  _TDispID _dispid(*this, OLETEXT("AddAt"), DISPID(10));
  TAutoArgs<2> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  _args[2] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsPoint3dCollectionDispT<T>::AddBefore(LPDISPATCH entity, LPDISPATCH base)
{
  _TDispID _dispid(*this, OLETEXT("AddBefore"), DISPID(11));
  TAutoArgs<2> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  _args[2] = base /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsPoint3dCollectionDispT<T>::DetachByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("DetachByIndex"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsPoint3dCollectionDispT<T>::DetachByBody(LPDISPATCH entity)
{
  _TDispID _dispid(*this, OLETEXT("DetachByBody"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksNurbsPoint3dCollectionDispT<T>::SetByIndex(LPDISPATCH entity, long index)
{
  _TDispID _dispid(*this, OLETEXT("SetByIndex"), DISPID(14));
  TAutoArgs<2> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  _args[2] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksNurbsPoint3dCollectionDispT<T>::FindIt(LPDISPATCH entity)
{
  _TDispID _dispid(*this, OLETEXT("FindIt"), DISPID(15));
  TAutoArgs<1> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksViewProjection
// Flags:     (4096) Dispatchable
// GUID:      {BF65B990-C2DC-4A12-9EB7-3E868608AF47}
// *********************************************************************//
template <class T> void __fastcall
ksViewProjectionDispT<T>::set_name(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksViewProjectionDispT<T>::get_name()
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksViewProjectionDispT<T>::set_scale(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("scale"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksViewProjectionDispT<T>::get_scale()
{
  _TDispID _dispid(*this, OLETEXT("scale"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksViewProjectionDispT<T>::IsCurrent()
{
  _TDispID _dispid(*this, OLETEXT("IsCurrent"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksViewProjectionDispT<T>::SetCurrent()
{
  _TDispID _dispid(*this, OLETEXT("SetCurrent"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksViewProjectionDispT<T>::GetPlacement()
{
  _TDispID _dispid(*this, OLETEXT("GetPlacement"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksViewProjectionDispT<T>::SetPlacement(LPDISPATCH place)
{
  _TDispID _dispid(*this, OLETEXT("SetPlacement"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = place /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksViewProjectionDispT<T>::get_index()
{
  _TDispID _dispid(*this, OLETEXT("index"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksViewProjectionDispT<T>::SetMatrix3D(TVariant Matrix3D)
{
  _TDispID _dispid(*this, OLETEXT("SetMatrix3D"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Matrix3D /*[VT_VARIANT:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksViewProjectionCollection
// Flags:     (4096) Dispatchable
// GUID:      {A174F872-C800-409E-9FB2-FF5B89D8B4B8}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksViewProjectionCollectionDispT<T>::refresh()
{
  _TDispID _dispid(*this, OLETEXT("refresh"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksViewProjectionCollectionDispT<T>::GetCount()
{
  _TDispID _dispid(*this, OLETEXT("GetCount"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksViewProjectionCollectionDispT<T>::First()
{
  _TDispID _dispid(*this, OLETEXT("First"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksViewProjectionCollectionDispT<T>::Last()
{
  _TDispID _dispid(*this, OLETEXT("Last"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksViewProjectionCollectionDispT<T>::Next()
{
  _TDispID _dispid(*this, OLETEXT("Next"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksViewProjectionCollectionDispT<T>::Prev()
{
  _TDispID _dispid(*this, OLETEXT("Prev"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksViewProjectionCollectionDispT<T>::GetByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetByIndex"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksViewProjectionCollectionDispT<T>::GetByName(BSTR name, TOLEBOOL testFullName/*[def,opt]*/, 
                                              TOLEBOOL testIgnoreCase/*[def,opt]*/)
{
  _TDispID _dispid(*this, OLETEXT("GetByName"), DISPID(8));
  TAutoArgs<3> _args;
  _args[1] = name /*[VT_BSTR:0]*/;
  _args[2] = testFullName /*[VT_BOOL:0]*/;
  _args[3] = testIgnoreCase /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksViewProjectionCollectionDispT<T>::FindIt(LPDISPATCH entity)
{
  _TDispID _dispid(*this, OLETEXT("FindIt"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksViewProjectionCollectionDispT<T>::Add(LPDISPATCH entity)
{
  _TDispID _dispid(*this, OLETEXT("Add"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksViewProjectionCollectionDispT<T>::DetachByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("DetachByIndex"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksViewProjectionCollectionDispT<T>::DetachByBody(LPDISPATCH entity)
{
  _TDispID _dispid(*this, OLETEXT("DetachByBody"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = entity /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksViewProjectionCollectionDispT<T>::DetachByName(BSTR name)
{
  _TDispID _dispid(*this, OLETEXT("DetachByName"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = name /*[VT_BSTR:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksViewProjectionCollectionDispT<T>::NewViewProjection()
{
  _TDispID _dispid(*this, OLETEXT("NewViewProjection"), DISPID(14));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksSelectionMng
// Flags:     (4096) Dispatchable
// GUID:      {BE41850C-CFC5-40D4-AE49-37AA391BCF4B}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksSelectionMngDispT<T>::Select(LPDISPATCH obj)
{
  _TDispID _dispid(*this, OLETEXT("Select"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSelectionMngDispT<T>::Unselect(LPDISPATCH obj)
{
  _TDispID _dispid(*this, OLETEXT("Unselect"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSelectionMngDispT<T>::UnselectAll()
{
  _TDispID _dispid(*this, OLETEXT("UnselectAll"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksSelectionMngDispT<T>::IsSelected(LPDISPATCH obj)
{
  _TDispID _dispid(*this, OLETEXT("IsSelected"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSelectionMngDispT<T>::GetCount()
{
  _TDispID _dispid(*this, OLETEXT("GetCount"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSelectionMngDispT<T>::First()
{
  _TDispID _dispid(*this, OLETEXT("First"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSelectionMngDispT<T>::Last()
{
  _TDispID _dispid(*this, OLETEXT("Last"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSelectionMngDispT<T>::Next()
{
  _TDispID _dispid(*this, OLETEXT("Next"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSelectionMngDispT<T>::Prev()
{
  _TDispID _dispid(*this, OLETEXT("Prev"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksSelectionMngDispT<T>::GetObjectByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetObjectByIndex"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksSelectionMngDispT<T>::GetObjectType(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetObjectType"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksChooseMng
// Flags:     (4096) Dispatchable
// GUID:      {8F2AA755-D9D1-42A0-97BF-C92548CE7232}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksChooseMngDispT<T>::Choose(LPDISPATCH obj)
{
  _TDispID _dispid(*this, OLETEXT("Choose"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksChooseMngDispT<T>::UnChoose(LPDISPATCH obj)
{
  _TDispID _dispid(*this, OLETEXT("UnChoose"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksChooseMngDispT<T>::UnChooseAll()
{
  _TDispID _dispid(*this, OLETEXT("UnChooseAll"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksChooseMngDispT<T>::IsChoosen(LPDISPATCH obj)
{
  _TDispID _dispid(*this, OLETEXT("IsChoosen"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksChooseMngDispT<T>::GetCount()
{
  _TDispID _dispid(*this, OLETEXT("GetCount"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksChooseMngDispT<T>::First()
{
  _TDispID _dispid(*this, OLETEXT("First"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksChooseMngDispT<T>::Last()
{
  _TDispID _dispid(*this, OLETEXT("Last"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksChooseMngDispT<T>::Next()
{
  _TDispID _dispid(*this, OLETEXT("Next"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksChooseMngDispT<T>::Prev()
{
  _TDispID _dispid(*this, OLETEXT("Prev"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksChooseMngDispT<T>::GetObjectByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetObjectByIndex"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksChooseMngDispT<T>::GetObjectType(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetObjectType"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksArc3dParam
// Flags:     (4096) Dispatchable
// GUID:      {7DCBCC76-5041-4C1E-9B33-12B1352D6D57}
// *********************************************************************//
template <class T> LPDISPATCH __fastcall
ksArc3dParamDispT<T>::GetPlacement()
{
  _TDispID _dispid(*this, OLETEXT("GetPlacement"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksArc3dParamDispT<T>::get_radius()
{
  _TDispID _dispid(*this, OLETEXT("radius"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> double __fastcall
ksArc3dParamDispT<T>::get_angle()
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksTreeNodeParam
// Flags:     (4096) Dispatchable
// GUID:      {9F8DE1DC-1268-4785-9217-1B0DD59B85FA}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksTreeNodeParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksTreeNodeParamDispT<T>::get_type()
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> BSTR __fastcall
ksTreeNodeParamDispT<T>::get_name()
{
  _TDispID _dispid(*this, OLETEXT("name"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksTreeNodeParamDispT<T>::GetComment()
{
  _TDispID _dispid(*this, OLETEXT("GetComment"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksTreeNodeParamDispT<T>::GetNodes()
{
  _TDispID _dispid(*this, OLETEXT("GetNodes"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksAssociationViewParam
// Flags:     (4096) Dispatchable
// GUID:      {C81EB1DA-BCB0-491A-8D22-923BF817D572}
// *********************************************************************//
template <class T> void __fastcall
ksAssociationViewParamDispT<T>::set_fileName(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("fileName"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksAssociationViewParamDispT<T>::get_fileName()
{
  _TDispID _dispid(*this, OLETEXT("fileName"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAssociationViewParamDispT<T>::set_projectionName(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("projectionName"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksAssociationViewParamDispT<T>::get_projectionName()
{
  _TDispID _dispid(*this, OLETEXT("projectionName"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAssociationViewParamDispT<T>::set_projectionLink(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("projectionLink"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksAssociationViewParamDispT<T>::get_projectionLink()
{
  _TDispID _dispid(*this, OLETEXT("projectionLink"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAssociationViewParamDispT<T>::set_disassembly(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("disassembly"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksAssociationViewParamDispT<T>::get_disassembly()
{
  _TDispID _dispid(*this, OLETEXT("disassembly"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAssociationViewParamDispT<T>::set_visibleLinesStyle(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("visibleLinesStyle"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksAssociationViewParamDispT<T>::get_visibleLinesStyle()
{
  _TDispID _dispid(*this, OLETEXT("visibleLinesStyle"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAssociationViewParamDispT<T>::set_hiddenLinesStyle(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("hiddenLinesStyle"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksAssociationViewParamDispT<T>::get_hiddenLinesStyle()
{
  _TDispID _dispid(*this, OLETEXT("hiddenLinesStyle"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAssociationViewParamDispT<T>::set_tangentEdgesStyle(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("tangentEdgesStyle"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksAssociationViewParamDispT<T>::get_tangentEdgesStyle()
{
  _TDispID _dispid(*this, OLETEXT("tangentEdgesStyle"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAssociationViewParamDispT<T>::set_hiddenLinesShow(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("hiddenLinesShow"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksAssociationViewParamDispT<T>::get_hiddenLinesShow()
{
  _TDispID _dispid(*this, OLETEXT("hiddenLinesShow"), DISPID(11));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAssociationViewParamDispT<T>::set_tangentEdgesShow(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("tangentEdgesShow"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksAssociationViewParamDispT<T>::get_tangentEdgesShow()
{
  _TDispID _dispid(*this, OLETEXT("tangentEdgesShow"), DISPID(12));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAssociationViewParamDispT<T>::set_projBodies(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("projBodies"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksAssociationViewParamDispT<T>::get_projBodies()
{
  _TDispID _dispid(*this, OLETEXT("projBodies"), DISPID(13));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAssociationViewParamDispT<T>::set_projSurfaces(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("projSurfaces"), DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksAssociationViewParamDispT<T>::get_projSurfaces()
{
  _TDispID _dispid(*this, OLETEXT("projSurfaces"), DISPID(14));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAssociationViewParamDispT<T>::set_projThreads(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("projThreads"), DISPID(15));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksAssociationViewParamDispT<T>::get_projThreads()
{
  _TDispID _dispid(*this, OLETEXT("projThreads"), DISPID(15));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAssociationViewParamDispT<T>::set_section(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("section"), DISPID(17));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksAssociationViewParamDispT<T>::get_section()
{
  _TDispID _dispid(*this, OLETEXT("section"), DISPID(17));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksAssociationViewParamDispT<T>::set_sameHatch(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("sameHatch"), DISPID(19));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksAssociationViewParamDispT<T>::get_sameHatch()
{
  _TDispID _dispid(*this, OLETEXT("sameHatch"), DISPID(19));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksAssociationViewParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksAssociationViewParamDispT<T>::GetViewParam()
{
  _TDispID _dispid(*this, OLETEXT("GetViewParam"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> short __fastcall
ksAssociationViewParamDispT<T>::get_viewType()
{
  _TDispID _dispid(*this, OLETEXT("viewType"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksAssociationViewParamDispT<T>::GetHatchParam()
{
  _TDispID _dispid(*this, OLETEXT("GetHatchParam"), DISPID(16));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksAssociationViewParamDispT<T>::SetDimensionLayoutScaling(TOLEBOOL scaling)
{
  _TDispID _dispid(*this, OLETEXT("SetDimensionLayoutScaling"), DISPID(18));
  TAutoArgs<1> _args;
  _args[1] = scaling /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksViewColorParam
// Flags:     (4096) Dispatchable
// GUID:      {5A42B962-8F78-4557-B17A-1B871F8DBDB5}
// *********************************************************************//
template <class T> void __fastcall
ksViewColorParamDispT<T>::set_color(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("color"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksViewColorParamDispT<T>::get_color()
{
  _TDispID _dispid(*this, OLETEXT("color"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksViewColorParamDispT<T>::set_useGradient(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("useGradient"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksViewColorParamDispT<T>::get_useGradient()
{
  _TDispID _dispid(*this, OLETEXT("useGradient"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksViewColorParamDispT<T>::set_topColor(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("topColor"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksViewColorParamDispT<T>::get_topColor()
{
  _TDispID _dispid(*this, OLETEXT("topColor"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksViewColorParamDispT<T>::set_bottomColor(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("bottomColor"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksViewColorParamDispT<T>::get_bottomColor()
{
  _TDispID _dispid(*this, OLETEXT("bottomColor"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksViewColorParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksAxisLineParam
// Flags:     (4096) Dispatchable
// GUID:      {AFE694D7-C1E5-468F-99B0-FE4C60C49899}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksAxisLineParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksAxisLineParamDispT<T>::GetBegPoint()
{
  _TDispID _dispid(*this, OLETEXT("GetBegPoint"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksAxisLineParamDispT<T>::GetEndPoint()
{
  _TDispID _dispid(*this, OLETEXT("GetEndPoint"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksTextDocumentParam
// Flags:     (4096) Dispatchable
// GUID:      {33706D56-D085-4840-833B-435AEB00BE2A}
// *********************************************************************//
template <class T> void __fastcall
ksTextDocumentParamDispT<T>::set_fileName(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("fileName"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksTextDocumentParamDispT<T>::get_fileName()
{
  _TDispID _dispid(*this, OLETEXT("fileName"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextDocumentParamDispT<T>::set_comment(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("comment"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksTextDocumentParamDispT<T>::get_comment()
{
  _TDispID _dispid(*this, OLETEXT("comment"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextDocumentParamDispT<T>::set_author(BSTR /*[VT_BSTR:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("author"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> BSTR /*[VT_BSTR:0]*/ __fastcall
ksTextDocumentParamDispT<T>::get_author()
{
  _TDispID _dispid(*this, OLETEXT("author"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextDocumentParamDispT<T>::set_type(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksTextDocumentParamDispT<T>::get_type()
{
  _TDispID _dispid(*this, OLETEXT("type"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksTextDocumentParamDispT<T>::set_regime(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("regime"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksTextDocumentParamDispT<T>::get_regime()
{
  _TDispID _dispid(*this, OLETEXT("regime"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksTextDocumentParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksTextDocumentParamDispT<T>::GetFirstSheet()
{
  _TDispID _dispid(*this, OLETEXT("GetFirstSheet"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksTextDocumentParamDispT<T>::GetEvenSheet()
{
  _TDispID _dispid(*this, OLETEXT("GetEvenSheet"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksTextDocumentParamDispT<T>::GetOddSheet()
{
  _TDispID _dispid(*this, OLETEXT("GetOddSheet"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksTextDocumentParamDispT<T>::GetArrTitleSheet()
{
  _TDispID _dispid(*this, OLETEXT("GetArrTitleSheet"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksTextDocumentParamDispT<T>::GetArrTailSheet()
{
  _TDispID _dispid(*this, OLETEXT("GetArrTailSheet"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksTextDocumentParamDispT<T>::GetSheetParam()
{
  _TDispID _dispid(*this, OLETEXT("GetSheetParam"), DISPID(12));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksRemoteElementParam
// Flags:     (4096) Dispatchable
// GUID:      {25076616-4949-455E-A45C-1B801884D825}
// *********************************************************************//
template <class T> void __fastcall
ksRemoteElementParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksRemoteElementParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRemoteElementParamDispT<T>::set_signType(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("signType"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksRemoteElementParamDispT<T>::get_signType()
{
  _TDispID _dispid(*this, OLETEXT("signType"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRemoteElementParamDispT<T>::set_x(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRemoteElementParamDispT<T>::get_x()
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRemoteElementParamDispT<T>::set_y(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRemoteElementParamDispT<T>::get_y()
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRemoteElementParamDispT<T>::set_width(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("width"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRemoteElementParamDispT<T>::get_width()
{
  _TDispID _dispid(*this, OLETEXT("width"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRemoteElementParamDispT<T>::set_height(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("height"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRemoteElementParamDispT<T>::get_height()
{
  _TDispID _dispid(*this, OLETEXT("height"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRemoteElementParamDispT<T>::set_radius(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("radius"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRemoteElementParamDispT<T>::get_radius()
{
  _TDispID _dispid(*this, OLETEXT("radius"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRemoteElementParamDispT<T>::set_smooth(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("smooth"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRemoteElementParamDispT<T>::get_smooth()
{
  _TDispID _dispid(*this, OLETEXT("smooth"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRemoteElementParamDispT<T>::set_shelfX(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("shelfX"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRemoteElementParamDispT<T>::get_shelfX()
{
  _TDispID _dispid(*this, OLETEXT("shelfX"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRemoteElementParamDispT<T>::set_shelfY(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("shelfY"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksRemoteElementParamDispT<T>::get_shelfY()
{
  _TDispID _dispid(*this, OLETEXT("shelfY"), DISPID(11));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksRemoteElementParamDispT<T>::set_shelfDir(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("shelfDir"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksRemoteElementParamDispT<T>::get_shelfDir()
{
  _TDispID _dispid(*this, OLETEXT("shelfDir"), DISPID(12));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRemoteElementParamDispT<T>::Init(long style)
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = style /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksRemoteElementParamDispT<T>::GetpText()
{
  _TDispID _dispid(*this, OLETEXT("GetpText"), DISPID(13));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksRemoteElementParamDispT<T>::SetpText(LPDISPATCH pText)
{
  _TDispID _dispid(*this, OLETEXT("SetpText"), DISPID(14));
  TAutoArgs<1> _args;
  _args[1] = pText /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksDeletedCopyCollection
// Flags:     (4096) Dispatchable
// GUID:      {82F60797-D69C-4EB4-9F1A-24D625D5EAFA}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksDeletedCopyCollectionDispT<T>::refresh()
{
  _TDispID _dispid(*this, OLETEXT("refresh"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDeletedCopyCollectionDispT<T>::GetCount()
{
  _TDispID _dispid(*this, OLETEXT("GetCount"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDeletedCopyCollectionDispT<T>::First(long* index1, long* index2)
{
  _TDispID _dispid(*this, OLETEXT("First"), DISPID(3));
  TAutoArgs<2> _args;
  _args[1] = index1 /*[VT_I4:1]*/;
  _args[2] = index2 /*[VT_I4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDeletedCopyCollectionDispT<T>::Last(long* index1, long* index2)
{
  _TDispID _dispid(*this, OLETEXT("Last"), DISPID(4));
  TAutoArgs<2> _args;
  _args[1] = index1 /*[VT_I4:1]*/;
  _args[2] = index2 /*[VT_I4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDeletedCopyCollectionDispT<T>::Next(long* index1, long* index2)
{
  _TDispID _dispid(*this, OLETEXT("Next"), DISPID(5));
  TAutoArgs<2> _args;
  _args[1] = index1 /*[VT_I4:1]*/;
  _args[2] = index2 /*[VT_I4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDeletedCopyCollectionDispT<T>::Prev(long* index1, long* index2)
{
  _TDispID _dispid(*this, OLETEXT("Prev"), DISPID(6));
  TAutoArgs<2> _args;
  _args[1] = index1 /*[VT_I4:1]*/;
  _args[2] = index2 /*[VT_I4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDeletedCopyCollectionDispT<T>::GetByIndex(long index, long* index1, long* index2)
{
  _TDispID _dispid(*this, OLETEXT("GetByIndex"), DISPID(7));
  TAutoArgs<3> _args;
  _args[1] = index /*[VT_I4:0]*/;
  _args[2] = index1 /*[VT_I4:1]*/;
  _args[3] = index2 /*[VT_I4:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDeletedCopyCollectionDispT<T>::Clear()
{
  _TDispID _dispid(*this, OLETEXT("Clear"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDeletedCopyCollectionDispT<T>::Add(long index1, long index2)
{
  _TDispID _dispid(*this, OLETEXT("Add"), DISPID(9));
  TAutoArgs<2> _args;
  _args[1] = index1 /*[VT_I4:0]*/;
  _args[2] = index2 /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDeletedCopyCollectionDispT<T>::AddAt(long index1, long index2, long index)
{
  _TDispID _dispid(*this, OLETEXT("AddAt"), DISPID(10));
  TAutoArgs<3> _args;
  _args[1] = index1 /*[VT_I4:0]*/;
  _args[2] = index2 /*[VT_I4:0]*/;
  _args[3] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDeletedCopyCollectionDispT<T>::DetachByIndex(long index)
{
  _TDispID _dispid(*this, OLETEXT("DetachByIndex"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDeletedCopyCollectionDispT<T>::DetachByBody(long index1, long index2)
{
  _TDispID _dispid(*this, OLETEXT("DetachByBody"), DISPID(12));
  TAutoArgs<2> _args;
  _args[1] = index1 /*[VT_I4:0]*/;
  _args[2] = index2 /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksDeletedCopyCollectionDispT<T>::SetByIndex(long index1, long index2, long index)
{
  _TDispID _dispid(*this, OLETEXT("SetByIndex"), DISPID(13));
  TAutoArgs<3> _args;
  _args[1] = index1 /*[VT_I4:0]*/;
  _args[2] = index2 /*[VT_I4:0]*/;
  _args[3] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksDeletedCopyCollectionDispT<T>::FindIt(long index1, long index2)
{
  _TDispID _dispid(*this, OLETEXT("FindIt"), DISPID(14));
  TAutoArgs<2> _args;
  _args[1] = index1 /*[VT_I4:0]*/;
  _args[2] = index2 /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCopyObjectParam
// Flags:     (4096) Dispatchable
// GUID:      {AACAD820-7790-46EB-B17F-06AE42215ED7}
// *********************************************************************//
template <class T> void __fastcall
ksCopyObjectParamDispT<T>::set_objRef(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("objRef"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksCopyObjectParamDispT<T>::get_objRef()
{
  _TDispID _dispid(*this, OLETEXT("objRef"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCopyObjectParamDispT<T>::set_xOld(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("xOld"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCopyObjectParamDispT<T>::get_xOld()
{
  _TDispID _dispid(*this, OLETEXT("xOld"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCopyObjectParamDispT<T>::set_yOld(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("yOld"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCopyObjectParamDispT<T>::get_yOld()
{
  _TDispID _dispid(*this, OLETEXT("yOld"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCopyObjectParamDispT<T>::set_xNew(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("xNew"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCopyObjectParamDispT<T>::get_xNew()
{
  _TDispID _dispid(*this, OLETEXT("xNew"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCopyObjectParamDispT<T>::set_yNew(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("yNew"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCopyObjectParamDispT<T>::get_yNew()
{
  _TDispID _dispid(*this, OLETEXT("yNew"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCopyObjectParamDispT<T>::set_scale(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("scale"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCopyObjectParamDispT<T>::get_scale()
{
  _TDispID _dispid(*this, OLETEXT("scale"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCopyObjectParamDispT<T>::set_angle(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksCopyObjectParamDispT<T>::get_angle()
{
  _TDispID _dispid(*this, OLETEXT("angle"), DISPID(8));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCopyObjectParamDispT<T>::set_attrCopy(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("attrCopy"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCopyObjectParamDispT<T>::get_attrCopy()
{
  _TDispID _dispid(*this, OLETEXT("attrCopy"), DISPID(9));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCopyObjectParamDispT<T>::set_dimLineScale(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("dimLineScale"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCopyObjectParamDispT<T>::get_dimLineScale()
{
  _TDispID _dispid(*this, OLETEXT("dimLineScale"), DISPID(10));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksCopyObjectParamDispT<T>::set_spcObjCopy(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("spcObjCopy"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksCopyObjectParamDispT<T>::get_spcObjCopy()
{
  _TDispID _dispid(*this, OLETEXT("spcObjCopy"), DISPID(11));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCopyObjectParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksThreadDefinition
// Flags:     (4096) Dispatchable
// GUID:      {5DDB6B14-6F3D-431F-B62F-C5FCCAFC3632}
// *********************************************************************//
template <class T> void __fastcall
ksThreadDefinitionDispT<T>::set_dr(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("dr"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksThreadDefinitionDispT<T>::get_dr()
{
  _TDispID _dispid(*this, OLETEXT("dr"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksThreadDefinitionDispT<T>::set_length(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("length"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksThreadDefinitionDispT<T>::get_length()
{
  _TDispID _dispid(*this, OLETEXT("length"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksThreadDefinitionDispT<T>::set_p(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("p"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksThreadDefinitionDispT<T>::get_p()
{
  _TDispID _dispid(*this, OLETEXT("p"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksThreadDefinitionDispT<T>::set_autoDefinDr(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("autoDefinDr"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksThreadDefinitionDispT<T>::get_autoDefinDr()
{
  _TDispID _dispid(*this, OLETEXT("autoDefinDr"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksThreadDefinitionDispT<T>::set_allLength(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("allLength"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksThreadDefinitionDispT<T>::get_allLength()
{
  _TDispID _dispid(*this, OLETEXT("allLength"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksThreadDefinitionDispT<T>::set_faceValue(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("faceValue"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksThreadDefinitionDispT<T>::get_faceValue()
{
  _TDispID _dispid(*this, OLETEXT("faceValue"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksThreadDefinitionDispT<T>::get_outside()
{
  _TDispID _dispid(*this, OLETEXT("outside"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksThreadDefinitionDispT<T>::GetBaseObject()
{
  _TDispID _dispid(*this, OLETEXT("GetBaseObject"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksThreadDefinitionDispT<T>::SetBaseObject(LPDISPATCH obj)
{
  _TDispID _dispid(*this, OLETEXT("SetBaseObject"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksThreadDefinitionDispT<T>::GetFaceBegin()
{
  _TDispID _dispid(*this, OLETEXT("GetFaceBegin"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksThreadDefinitionDispT<T>::SetFaceBegin(LPDISPATCH face)
{
  _TDispID _dispid(*this, OLETEXT("SetFaceBegin"), DISPID(11));
  TAutoArgs<1> _args;
  _args[1] = face /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksThreadDefinitionDispT<T>::GetFaceEnd()
{
  _TDispID _dispid(*this, OLETEXT("GetFaceEnd"), DISPID(12));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksThreadDefinitionDispT<T>::SetFaceEnd(LPDISPATCH face)
{
  _TDispID _dispid(*this, OLETEXT("SetFaceEnd"), DISPID(13));
  TAutoArgs<1> _args;
  _args[1] = face /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksOverlapObjectOptions
// Flags:     (4096) Dispatchable
// GUID:      {F78E6B71-BEF3-4A4D-AE50-FE96426F6FD1}
// *********************************************************************//
template <class T> void __fastcall
ksOverlapObjectOptionsDispT<T>::set_overlap(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("overlap"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksOverlapObjectOptionsDispT<T>::get_overlap()
{
  _TDispID _dispid(*this, OLETEXT("overlap"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksOverlapObjectOptionsDispT<T>::set_gap(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("gap"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksOverlapObjectOptionsDispT<T>::get_gap()
{
  _TDispID _dispid(*this, OLETEXT("gap"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksOverlapObjectOptionsDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksObjectsFilter3D
// Flags:     (4096) Dispatchable
// GUID:      {ABBA6CE0-CB4C-4A32-98B4-B639352C75BA}
// *********************************************************************//
template <class T> void __fastcall
ksObjectsFilter3DDispT<T>::set_filterAll(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("filterAll"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksObjectsFilter3DDispT<T>::get_filterAll()
{
  _TDispID _dispid(*this, OLETEXT("filterAll"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksObjectsFilter3DDispT<T>::set_filterFaces(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("filterFaces"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksObjectsFilter3DDispT<T>::get_filterFaces()
{
  _TDispID _dispid(*this, OLETEXT("filterFaces"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksObjectsFilter3DDispT<T>::set_filterEdges(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("filterEdges"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksObjectsFilter3DDispT<T>::get_filterEdges()
{
  _TDispID _dispid(*this, OLETEXT("filterEdges"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksObjectsFilter3DDispT<T>::set_filterVertexs(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("filterVertexs"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksObjectsFilter3DDispT<T>::get_filterVertexs()
{
  _TDispID _dispid(*this, OLETEXT("filterVertexs"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksObjectsFilter3DDispT<T>::set_filterCPlanes(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("filterCPlanes"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksObjectsFilter3DDispT<T>::get_filterCPlanes()
{
  _TDispID _dispid(*this, OLETEXT("filterCPlanes"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksObjectsFilter3DDispT<T>::set_filterCAxis(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("filterCAxis"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksObjectsFilter3DDispT<T>::get_filterCAxis()
{
  _TDispID _dispid(*this, OLETEXT("filterCAxis"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksParametrizationParam
// Flags:     (4096) Dispatchable
// GUID:      {ABBA6CE0-CB4C-4A32-98B4-B639352C75BB}
// *********************************************************************//
template <class T> void __fastcall
ksParametrizationParamDispT<T>::set_nearestPoints(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("nearestPoints"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksParametrizationParamDispT<T>::get_nearestPoints()
{
  _TDispID _dispid(*this, OLETEXT("nearestPoints"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksParametrizationParamDispT<T>::set_pointsLimit(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("pointsLimit"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksParametrizationParamDispT<T>::get_pointsLimit()
{
  _TDispID _dispid(*this, OLETEXT("pointsLimit"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksParametrizationParamDispT<T>::set_horizontal(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("horizontal"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksParametrizationParamDispT<T>::get_horizontal()
{
  _TDispID _dispid(*this, OLETEXT("horizontal"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksParametrizationParamDispT<T>::set_vertical(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("vertical"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksParametrizationParamDispT<T>::get_vertical()
{
  _TDispID _dispid(*this, OLETEXT("vertical"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksParametrizationParamDispT<T>::set_parallel(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("parallel"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksParametrizationParamDispT<T>::get_parallel()
{
  _TDispID _dispid(*this, OLETEXT("parallel"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksParametrizationParamDispT<T>::set_perpendicular(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("perpendicular"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksParametrizationParamDispT<T>::get_perpendicular()
{
  _TDispID _dispid(*this, OLETEXT("perpendicular"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksParametrizationParamDispT<T>::set_angleLimit(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("angleLimit"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksParametrizationParamDispT<T>::get_angleLimit()
{
  _TDispID _dispid(*this, OLETEXT("angleLimit"), DISPID(7));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksParametrizationParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(8));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksMacro3DDefinition
// Flags:     (4096) Dispatchable
// GUID:      {02556461-D088-4F00-AE61-D366082DB9BC}
// *********************************************************************//
template <class T> void __fastcall
ksMacro3DDefinitionDispT<T>::set_StaffVisible(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("StaffVisible"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksMacro3DDefinitionDispT<T>::get_StaffVisible()
{
  _TDispID _dispid(*this, OLETEXT("StaffVisible"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksMacro3DDefinitionDispT<T>::set_DoubleClickEditOff(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("DoubleClickEditOff"), DISPID(12));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksMacro3DDefinitionDispT<T>::get_DoubleClickEditOff()
{
  _TDispID _dispid(*this, OLETEXT("DoubleClickEditOff"), DISPID(12));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> Kompas6api5_tlb::ksFeatureCollectionPtr __fastcall
ksMacro3DDefinitionDispT<T>::FeatureCollection()
{
  _TDispID _dispid(*this, OLETEXT("FeatureCollection"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return (Kompas6api5_tlb::ksFeatureCollection* /*[C1]*/)(LPDISPATCH) /*[VT_DISPATCH:1]*/_args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMacro3DDefinitionDispT<T>::Destroy()
{
  _TDispID _dispid(*this, OLETEXT("Destroy"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMacro3DDefinitionDispT<T>::Add(LPDISPATCH obj)
{
  _TDispID _dispid(*this, OLETEXT("Add"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMacro3DDefinitionDispT<T>::SetUserParam(LPDISPATCH userPars)
{
  _TDispID _dispid(*this, OLETEXT("SetUserParam"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = userPars /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksMacro3DDefinitionDispT<T>::GetUserParamSize()
{
  _TDispID _dispid(*this, OLETEXT("GetUserParamSize"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMacro3DDefinitionDispT<T>::GetUserParam(LPDISPATCH userPars)
{
  _TDispID _dispid(*this, OLETEXT("GetUserParam"), DISPID(7));
  TAutoArgs<1> _args;
  _args[1] = userPars /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMacro3DDefinitionDispT<T>::SetObject(long index, LPDISPATCH obj)
{
  _TDispID _dispid(*this, OLETEXT("SetObject"), DISPID(8));
  TAutoArgs<2> _args;
  _args[1] = index /*[VT_I4:0]*/;
  _args[2] = obj /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMacro3DDefinitionDispT<T>::GetObject(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetObject"), DISPID(9));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksMacro3DDefinitionDispT<T>::GetCountObj()
{
  _TDispID _dispid(*this, OLETEXT("GetCountObj"), DISPID(10));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMacro3DDefinitionDispT<T>::ClearAllObj()
{
  _TDispID _dispid(*this, OLETEXT("ClearAllObj"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksAxisConefaceDefinition
// Flags:     (4096) Dispatchable
// GUID:      {97337DAF-B7CD-4FB8-8E18-23F0230E5CBE}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksAxisConefaceDefinitionDispT<T>::SetFace(LPDISPATCH face)
{
  _TDispID _dispid(*this, OLETEXT("SetFace"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = face /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksAxisConefaceDefinitionDispT<T>::GetFace()
{
  _TDispID _dispid(*this, OLETEXT("GetFace"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksAxisConefaceDefinitionDispT<T>::GetCurve3D()
{
  _TDispID _dispid(*this, OLETEXT("GetCurve3D"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksUnionComponentsDefinition
// Flags:     (4096) Dispatchable
// GUID:      {99797F89-FBA4-4582-812F-226AFB50ED7D}
// *********************************************************************//
template <class T> LPDISPATCH __fastcall
ksUnionComponentsDefinitionDispT<T>::PartArray()
{
  _TDispID _dispid(*this, OLETEXT("PartArray"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksMoldCavityDefinition
// Flags:     (4096) Dispatchable
// GUID:      {BE5F10F5-B198-49D9-9140-B2B91E060533}
// *********************************************************************//
template <class T> void __fastcall
ksMoldCavityDefinitionDispT<T>::set_scale(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("scale"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksMoldCavityDefinitionDispT<T>::get_scale()
{
  _TDispID _dispid(*this, OLETEXT("scale"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMoldCavityDefinitionDispT<T>::PartArray()
{
  _TDispID _dispid(*this, OLETEXT("PartArray"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksMoldCavityDefinitionDispT<T>::GetScaleCentre()
{
  _TDispID _dispid(*this, OLETEXT("GetScaleCentre"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksMoldCavityDefinitionDispT<T>::SetScaleCentre(LPDISPATCH vert)
{
  _TDispID _dispid(*this, OLETEXT("SetScaleCentre"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = vert /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksCoordinate3dCollection
// Flags:     (4096) Dispatchable
// GUID:      {E4091969-1C4E-4959-8D93-C2421564418B}
// *********************************************************************//
template <class T> long __fastcall
ksCoordinate3dCollectionDispT<T>::GetCount()
{
  _TDispID _dispid(*this, OLETEXT("GetCount"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCoordinate3dCollectionDispT<T>::GetByIndex(long index, double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetByIndex"), DISPID(2));
  TAutoArgs<4> _args;
  _args[1] = index /*[VT_I4:0]*/;
  _args[2] = x /*[VT_R8:1]*/;
  _args[3] = y /*[VT_R8:1]*/;
  _args[4] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksCoordinate3dCollectionDispT<T>::GetSafeArray(TVariant* array)
{
  _TDispID _dispid(*this, OLETEXT("GetSafeArray"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = array /*[VT_VARIANT:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksIntersectionResult
// Flags:     (4096) Dispatchable
// GUID:      {ABC7F8EE-CF07-4AA8-98A1-0DE35DB35B9E}
// *********************************************************************//
template <class T> long __fastcall
ksIntersectionResultDispT<T>::GetCount()
{
  _TDispID _dispid(*this, OLETEXT("GetCount"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksIntersectionResultDispT<T>::GetIntersectionType(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetIntersectionType"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksPlaneMiddleDefinition
// Flags:     (4096) Dispatchable
// GUID:      {CC5E3539-5B35-46FC-AFE1-19BB0168D52F}
// *********************************************************************//
template <class T> void __fastcall
ksPlaneMiddleDefinitionDispT<T>::set_position(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("position"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksPlaneMiddleDefinitionDispT<T>::get_position()
{
  _TDispID _dispid(*this, OLETEXT("position"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksPlaneMiddleDefinitionDispT<T>::SetObject(long number, LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetObject"), DISPID(2));
  TAutoArgs<2> _args;
  _args[1] = number /*[VT_I4:0]*/;
  _args[2] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneMiddleDefinitionDispT<T>::GetObject(long number)
{
  _TDispID _dispid(*this, OLETEXT("GetObject"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = number /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksPlaneMiddleDefinitionDispT<T>::GetSurface()
{
  _TDispID _dispid(*this, OLETEXT("GetSurface"), DISPID(4));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksControlPointDefinition
// Flags:     (4096) Dispatchable
// GUID:      {BC4C15A4-16E9-4CFA-A33E-CC86BA2FB546}
// *********************************************************************//
template <class T> TOLEBOOL __fastcall
ksControlPointDefinitionDispT<T>::SetVertex(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetVertex"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksControlPointDefinitionDispT<T>::GetVertex()
{
  _TDispID _dispid(*this, OLETEXT("GetVertex"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksControlPointDefinitionDispT<T>::GetPoint(double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetPoint"), DISPID(3));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  _args[3] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksConjunctivePointDefinition
// Flags:     (4096) Dispatchable
// GUID:      {177CBAF3-87E6-4376-B6A9-669C0E661BFF}
// *********************************************************************//
template <class T> void __fastcall
ksConjunctivePointDefinitionDispT<T>::set_direction(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("direction"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksConjunctivePointDefinitionDispT<T>::get_direction()
{
  _TDispID _dispid(*this, OLETEXT("direction"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksConjunctivePointDefinitionDispT<T>::SetVertex(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetVertex"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksConjunctivePointDefinitionDispT<T>::GetVertex()
{
  _TDispID _dispid(*this, OLETEXT("GetVertex"), DISPID(3));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksConjunctivePointDefinitionDispT<T>::SetEdge(LPDISPATCH val)
{
  _TDispID _dispid(*this, OLETEXT("SetEdge"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = val /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksConjunctivePointDefinitionDispT<T>::GetEdge()
{
  _TDispID _dispid(*this, OLETEXT("GetEdge"), DISPID(5));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksConjunctivePointDefinitionDispT<T>::GetPoint(double* x, double* y, double* z)
{
  _TDispID _dispid(*this, OLETEXT("GetPoint"), DISPID(6));
  TAutoArgs<3> _args;
  _args[1] = x /*[VT_R8:1]*/;
  _args[2] = y /*[VT_R8:1]*/;
  _args[3] = z /*[VT_R8:1]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksChooseBodies
// Flags:     (4096) Dispatchable
// GUID:      {E06B18BF-D2AF-4201-99BE-B7FA9EECF7A8}
// *********************************************************************//
template <class T> void __fastcall
ksChooseBodiesDispT<T>::set_ChooseBodiesType(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ChooseBodiesType"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksChooseBodiesDispT<T>::get_ChooseBodiesType()
{
  _TDispID _dispid(*this, OLETEXT("ChooseBodiesType"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksChooseBodiesDispT<T>::BodyCollection()
{
  _TDispID _dispid(*this, OLETEXT("BodyCollection"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksAggregateDefinition
// Flags:     (4096) Dispatchable
// GUID:      {44277B89-EEB4-456C-8EF9-2DC48D61EC91}
// *********************************************************************//
template <class T> void __fastcall
ksAggregateDefinitionDispT<T>::set_BooleanType(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("BooleanType"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksAggregateDefinitionDispT<T>::get_BooleanType()
{
  _TDispID _dispid(*this, OLETEXT("BooleanType"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksAggregateDefinitionDispT<T>::BodyCollection()
{
  _TDispID _dispid(*this, OLETEXT("BodyCollection"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksChangeLeaderParam
// Flags:     (4096) Dispatchable
// GUID:      {391938AE-79B6-4E3B-9815-AC1A31D9EA9D}
// *********************************************************************//
template <class T> void __fastcall
ksChangeLeaderParamDispT<T>::set_x(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksChangeLeaderParamDispT<T>::get_x()
{
  _TDispID _dispid(*this, OLETEXT("x"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksChangeLeaderParamDispT<T>::set_y(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksChangeLeaderParamDispT<T>::get_y()
{
  _TDispID _dispid(*this, OLETEXT("y"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksChangeLeaderParamDispT<T>::set_signType(short /*[VT_I2:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("signType"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> short /*[VT_I2:0]*/ __fastcall
ksChangeLeaderParamDispT<T>::get_signType()
{
  _TDispID _dispid(*this, OLETEXT("signType"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksChangeLeaderParamDispT<T>::set_signHeight(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("signHeight"), DISPID(4));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksChangeLeaderParamDispT<T>::get_signHeight()
{
  _TDispID _dispid(*this, OLETEXT("signHeight"), DISPID(4));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksChangeLeaderParamDispT<T>::set_leaderLength(double /*[VT_R8:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("leaderLength"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> double /*[VT_R8:0]*/ __fastcall
ksChangeLeaderParamDispT<T>::get_leaderLength()
{
  _TDispID _dispid(*this, OLETEXT("leaderLength"), DISPID(5));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> void __fastcall
ksChangeLeaderParamDispT<T>::set_style(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(6));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksChangeLeaderParamDispT<T>::get_style()
{
  _TDispID _dispid(*this, OLETEXT("style"), DISPID(6));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksChangeLeaderParamDispT<T>::GetpTextline()
{
  _TDispID _dispid(*this, OLETEXT("GetpTextline"), DISPID(7));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksChangeLeaderParamDispT<T>::SetpTextline(LPDISPATCH pTextLine)
{
  _TDispID _dispid(*this, OLETEXT("SetpTextline"), DISPID(8));
  TAutoArgs<1> _args;
  _args[1] = pTextLine /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksChangeLeaderParamDispT<T>::GetpPolyline()
{
  _TDispID _dispid(*this, OLETEXT("GetpPolyline"), DISPID(9));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksChangeLeaderParamDispT<T>::SetpPolyline(LPDISPATCH pPolyline)
{
  _TDispID _dispid(*this, OLETEXT("SetpPolyline"), DISPID(10));
  TAutoArgs<1> _args;
  _args[1] = pPolyline /*[VT_DISPATCH:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksChangeLeaderParamDispT<T>::Init()
{
  _TDispID _dispid(*this, OLETEXT("Init"), DISPID(11));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksChooseParts
// Flags:     (4096) Dispatchable
// GUID:      {08B7A093-D829-44A9-A238-2BFF31770112}
// *********************************************************************//
template <class T> void __fastcall
ksChoosePartsDispT<T>::set_ChoosePartsType(long /*[VT_I4:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("ChoosePartsType"), DISPID(1));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> long /*[VT_I4:0]*/ __fastcall
ksChoosePartsDispT<T>::get_ChoosePartsType()
{
  _TDispID _dispid(*this, OLETEXT("ChoosePartsType"), DISPID(1));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> LPDISPATCH __fastcall
ksChoosePartsDispT<T>::PartCollection()
{
  _TDispID _dispid(*this, OLETEXT("PartCollection"), DISPID(2));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// DispIntf:  ksBodyParts
// Flags:     (4096) Dispatchable
// GUID:      {1E3E9348-DB9B-4967-A62A-B412DF95146A}
// *********************************************************************//
template <class T> void __fastcall
ksBodyPartsDispT<T>::set_AllSelected(TOLEBOOL /*[VT_BOOL:0]*/ Value)
{
  _TDispID _dispid(*this, OLETEXT("AllSelected"), DISPID(3));
  TAutoArgs<1> _args;
  _args[1] = Value;
  OlePropertyPut(_dispid, _args);
}

template <class T> TOLEBOOL /*[VT_BOOL:0]*/ __fastcall
ksBodyPartsDispT<T>::get_AllSelected()
{
  _TDispID _dispid(*this, OLETEXT("AllSelected"), DISPID(3));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBodyPartsDispT<T>::UserBodyPartsChoice()
{
  _TDispID _dispid(*this, OLETEXT("UserBodyPartsChoice"), DISPID(1));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> long __fastcall
ksBodyPartsDispT<T>::get_count()
{
  _TDispID _dispid(*this, OLETEXT("count"), DISPID(2));
  TAutoArgs<0> _args;
  OlePropertyGet(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBodyPartsDispT<T>::SetPartSelected(long index, TOLEBOOL Select)
{
  _TDispID _dispid(*this, OLETEXT("SetPartSelected"), DISPID(4));
  TAutoArgs<2> _args;
  _args[1] = index /*[VT_I4:0]*/;
  _args[2] = Select /*[VT_BOOL:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBodyPartsDispT<T>::GetPartSelected(long index)
{
  _TDispID _dispid(*this, OLETEXT("GetPartSelected"), DISPID(5));
  TAutoArgs<1> _args;
  _args[1] = index /*[VT_I4:0]*/;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

template <class T> TOLEBOOL __fastcall
ksBodyPartsDispT<T>::SetGreatPartsSelected()
{
  _TDispID _dispid(*this, OLETEXT("SetGreatPartsSelected"), DISPID(6));
  TAutoArgs<0> _args;
  OleFunction(_dispid, _args);
  return _args.GetRetVariant();
}

// *********************************************************************//
// The following typedefs expose classes (named CoCoClassName) that       
// provide static Create() and CreateRemote(LPWSTR machineName) methods   
// for creating an instance of an exposed object. These functions can     
// be used by client wishing to automate CoClasses exposed by this        
// typelibrary.                                                           
// *********************************************************************//

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Object2DNotify
// Interface: TCOMIUnknown
// *********************************************************************//
typedef TCoClassCreatorT<TCOMIUnknown, IUnknown, &CLSID_Object2DNotify, &IID_IUnknown> CoObject2DNotify;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : SelectionMngNotify
// Interface: TCOMIUnknown
// *********************************************************************//
typedef TCoClassCreatorT<TCOMIUnknown, IUnknown, &CLSID_SelectionMngNotify, &IID_IUnknown> CoSelectionMngNotify;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Document2DNotify
// Interface: TCOMIUnknown
// *********************************************************************//
typedef TCoClassCreatorT<TCOMIUnknown, IUnknown, &CLSID_Document2DNotify, &IID_IUnknown> CoDocument2DNotify;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Document3DNotify
// Interface: TCOMIUnknown
// *********************************************************************//
typedef TCoClassCreatorT<TCOMIUnknown, IUnknown, &CLSID_Document3DNotify, &IID_IUnknown> CoDocument3DNotify;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Object3DNotify
// Interface: TCOMIUnknown
// *********************************************************************//
typedef TCoClassCreatorT<TCOMIUnknown, IUnknown, &CLSID_Object3DNotify, &IID_IUnknown> CoObject3DNotify;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : SpcDocumentNotify
// Interface: TCOMIUnknown
// *********************************************************************//
typedef TCoClassCreatorT<TCOMIUnknown, IUnknown, &CLSID_SpcDocumentNotify, &IID_IUnknown> CoSpcDocumentNotify;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : SpcObjectNotify
// Interface: TCOMIUnknown
// *********************************************************************//
typedef TCoClassCreatorT<TCOMIUnknown, IUnknown, &CLSID_SpcObjectNotify, &IID_IUnknown> CoSpcObjectNotify;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : App
// Interface: KompasObjectDisp
// *********************************************************************//
typedef TCoClassCreatorT<KompasObjectDisp, KompasObject, &CLSID_App, &DIID_KompasObject> CoApp;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Object2DNotifyResult
// Interface: ksObject2DNotifyResultDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksObject2DNotifyResultDisp, ksObject2DNotifyResult, &CLSID_Object2DNotifyResult, &DIID_ksObject2DNotifyResult> CoObject2DNotifyResult;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : FeatureCollection
// Interface: ksFeatureCollectionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksFeatureCollectionDisp, ksFeatureCollection, &CLSID_FeatureCollection, &DIID_ksFeatureCollection> CoFeatureCollection;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : placement
// Interface: ksPlacementDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksPlacementDisp, ksPlacement, &CLSID_placement, &DIID_ksPlacement> Coplacement;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Object3DNotifyResult
// Interface: ksObject3DNotifyResultDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksObject3DNotifyResultDisp, ksObject3DNotifyResult, &CLSID_Object3DNotifyResult, &DIID_ksObject3DNotifyResult> CoObject3DNotifyResult;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Document3DNotifyResult
// Interface: ksDocument3DNotifyResultDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksDocument3DNotifyResultDisp, ksDocument3DNotifyResult, &CLSID_Document3DNotifyResult, &DIID_ksDocument3DNotifyResult> CoDocument3DNotifyResult;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Document2D
// Interface: ksDocument2DDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksDocument2DDisp, ksDocument2D, &CLSID_Document2D, &DIID_ksDocument2D> CoDocument2D;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : SpecRoughParam
// Interface: ksSpecRoughParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksSpecRoughParamDisp, ksSpecRoughParam, &CLSID_SpecRoughParam, &DIID_ksSpecRoughParam> CoSpecRoughParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : EllipseParam
// Interface: ksEllipseParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksEllipseParamDisp, ksEllipseParam, &CLSID_EllipseParam, &DIID_ksEllipseParam> CoEllipseParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : EllipseArcParam
// Interface: ksEllipseArcParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksEllipseArcParamDisp, ksEllipseArcParam, &CLSID_EllipseArcParam, &DIID_ksEllipseArcParam> CoEllipseArcParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : EllipseArcParam1
// Interface: ksEllipseArcParam1Disp
// *********************************************************************//
typedef TCoClassCreatorT<ksEllipseArcParam1Disp, ksEllipseArcParam1, &CLSID_EllipseArcParam1, &DIID_ksEllipseArcParam1> CoEllipseArcParam1;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : EquidistantParam
// Interface: ksEquidistantParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksEquidistantParamDisp, ksEquidistantParam, &CLSID_EquidistantParam, &DIID_ksEquidistantParam> CoEquidistantParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ParagraphParam
// Interface: ksParagraphParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksParagraphParamDisp, ksParagraphParam, &CLSID_ParagraphParam, &DIID_ksParagraphParam> CoParagraphParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : TextItemParam
// Interface: ksTextItemParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksTextItemParamDisp, ksTextItemParam, &CLSID_TextItemParam, &DIID_ksTextItemParam> CoTextItemParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : TextLineParam
// Interface: ksTextLineParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksTextLineParamDisp, ksTextLineParam, &CLSID_TextLineParam, &DIID_ksTextLineParam> CoTextLineParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : TextItemFont
// Interface: ksTextItemFontDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksTextItemFontDisp, ksTextItemFont, &CLSID_TextItemFont, &DIID_ksTextItemFont> CoTextItemFont;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : CornerParam
// Interface: ksCornerParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCornerParamDisp, ksCornerParam, &CLSID_CornerParam, &DIID_ksCornerParam> CoCornerParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ContourParam
// Interface: ksContourParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksContourParamDisp, ksContourParam, &CLSID_ContourParam, &DIID_ksContourParam> CoContourParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : LayerParam
// Interface: ksLayerParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksLayerParamDisp, ksLayerParam, &CLSID_LayerParam, &DIID_ksLayerParam> CoLayerParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : LineParam
// Interface: ksLineParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksLineParamDisp, ksLineParam, &CLSID_LineParam, &DIID_ksLineParam> CoLineParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : RegularPolygonParam
// Interface: ksRegularPolygonParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksRegularPolygonParamDisp, ksRegularPolygonParam, &CLSID_RegularPolygonParam, &DIID_ksRegularPolygonParam> CoRegularPolygonParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : RectangleParam
// Interface: ksRectangleParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksRectangleParamDisp, ksRectangleParam, &CLSID_RectangleParam, &DIID_ksRectangleParam> CoRectangleParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : BaseParam
// Interface: ksBaseParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksBaseParamDisp, ksBaseParam, &CLSID_BaseParam, &DIID_ksBaseParam> CoBaseParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : LtVariant
// Interface: ksLtVariantDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksLtVariantDisp, ksLtVariant, &CLSID_LtVariant, &DIID_ksLtVariant> CoLtVariant;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : UserParam
// Interface: ksUserParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksUserParamDisp, ksUserParam, &CLSID_UserParam, &DIID_ksUserParam> CoUserParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : MathPointParam
// Interface: ksMathPointParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksMathPointParamDisp, ksMathPointParam, &CLSID_MathPointParam, &DIID_ksMathPointParam> CoMathPointParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : CurvePicture
// Interface: ksCurvePictureDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCurvePictureDisp, ksCurvePicture, &CLSID_CurvePicture, &DIID_ksCurvePicture> CoCurvePicture;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : CurvePattern
// Interface: ksCurvePatternDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCurvePatternDisp, ksCurvePattern, &CLSID_CurvePattern, &DIID_ksCurvePattern> CoCurvePattern;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : TAN
// Interface: ksTANDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksTANDisp, ksTAN, &CLSID_TAN, &DIID_ksTAN> CoTAN;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : CON
// Interface: ksCONDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCONDisp, ksCON, &CLSID_CON, &DIID_ksCON> CoCON;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : InertiaParam
// Interface: ksInertiaParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksInertiaParamDisp, ksInertiaParam, &CLSID_InertiaParam, &DIID_ksInertiaParam> CoInertiaParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : MassInertiaParam
// Interface: ksMassInertiaParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksMassInertiaParamDisp, ksMassInertiaParam, &CLSID_MassInertiaParam, &DIID_ksMassInertiaParam> CoMassInertiaParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Mathematic2D
// Interface: ksMathematic2DDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksMathematic2DDisp, ksMathematic2D, &CLSID_Mathematic2D, &DIID_ksMathematic2D> CoMathematic2D;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : DynamicArray
// Interface: ksDynamicArrayDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksDynamicArrayDisp, ksDynamicArray, &CLSID_DynamicArray, &DIID_ksDynamicArray> CoDynamicArray;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : RDimDrawingParam
// Interface: ksRDimDrawingParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksRDimDrawingParamDisp, ksRDimDrawingParam, &CLSID_RDimDrawingParam, &DIID_ksRDimDrawingParam> CoRDimDrawingParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : RDimSourceParam
// Interface: ksRDimSourceParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksRDimSourceParamDisp, ksRDimSourceParam, &CLSID_RDimSourceParam, &DIID_ksRDimSourceParam> CoRDimSourceParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : RDimParam
// Interface: ksRDimParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksRDimParamDisp, ksRDimParam, &CLSID_RDimParam, &DIID_ksRDimParam> CoRDimParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : LineSegParam
// Interface: ksLineSegParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksLineSegParamDisp, ksLineSegParam, &CLSID_LineSegParam, &DIID_ksLineSegParam> CoLineSegParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : CircleParam
// Interface: ksCircleParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCircleParamDisp, ksCircleParam, &CLSID_CircleParam, &DIID_ksCircleParam> CoCircleParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ArcByAngleParam
// Interface: ksArcByAngleParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksArcByAngleParamDisp, ksArcByAngleParam, &CLSID_ArcByAngleParam, &DIID_ksArcByAngleParam> CoArcByAngleParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ArcByPointParam
// Interface: ksArcByPointParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksArcByPointParamDisp, ksArcByPointParam, &CLSID_ArcByPointParam, &DIID_ksArcByPointParam> CoArcByPointParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : PointParam
// Interface: ksPointParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksPointParamDisp, ksPointParam, &CLSID_PointParam, &DIID_ksPointParam> CoPointParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : HatchParam
// Interface: ksHatchParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksHatchParamDisp, ksHatchParam, &CLSID_HatchParam, &DIID_ksHatchParam> CoHatchParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : TextParam
// Interface: ksTextParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksTextParamDisp, ksTextParam, &CLSID_TextParam, &DIID_ksTextParam> CoTextParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : NurbsPointParam
// Interface: ksNurbsPointParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksNurbsPointParamDisp, ksNurbsPointParam, &CLSID_NurbsPointParam, &DIID_ksNurbsPointParam> CoNurbsPointParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : DoubleValue
// Interface: ksDoubleValueDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksDoubleValueDisp, ksDoubleValue, &CLSID_DoubleValue, &DIID_ksDoubleValue> CoDoubleValue;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : NurbsParam
// Interface: ksNurbsParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksNurbsParamDisp, ksNurbsParam, &CLSID_NurbsParam, &DIID_ksNurbsParam> CoNurbsParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ConicArcParam
// Interface: ksConicArcParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksConicArcParamDisp, ksConicArcParam, &CLSID_ConicArcParam, &DIID_ksConicArcParam> CoConicArcParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : CentreParam
// Interface: ksCentreParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCentreParamDisp, ksCentreParam, &CLSID_CentreParam, &DIID_ksCentreParam> CoCentreParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : PlacementParam
// Interface: ksPlacementParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksPlacementParamDisp, ksPlacementParam, &CLSID_PlacementParam, &DIID_ksPlacementParam> CoPlacementParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : RasterParam
// Interface: ksRasterParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksRasterParamDisp, ksRasterParam, &CLSID_RasterParam, &DIID_ksRasterParam> CoRasterParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : PolylineParam
// Interface: ksPolylineParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksPolylineParamDisp, ksPolylineParam, &CLSID_PolylineParam, &DIID_ksPolylineParam> CoPolylineParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : InsertFragmentParam
// Interface: ksInsertFragmentParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksInsertFragmentParamDisp, ksInsertFragmentParam, &CLSID_InsertFragmentParam, &DIID_ksInsertFragmentParam> CoInsertFragmentParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ViewParam
// Interface: ksViewParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksViewParamDisp, ksViewParam, &CLSID_ViewParam, &DIID_ksViewParam> CoViewParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : LBreakDimSource
// Interface: ksLBreakDimSourceDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksLBreakDimSourceDisp, ksLBreakDimSource, &CLSID_LBreakDimSource, &DIID_ksLBreakDimSource> CoLBreakDimSource;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : BreakDimDrawing
// Interface: ksBreakDimDrawingDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksBreakDimDrawingDisp, ksBreakDimDrawing, &CLSID_BreakDimDrawing, &DIID_ksBreakDimDrawing> CoBreakDimDrawing;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : LBreakDimParam
// Interface: ksLBreakDimParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksLBreakDimParamDisp, ksLBreakDimParam, &CLSID_LBreakDimParam, &DIID_ksLBreakDimParam> CoLBreakDimParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ABreakDimParam
// Interface: ksABreakDimParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksABreakDimParamDisp, ksABreakDimParam, &CLSID_ABreakDimParam, &DIID_ksABreakDimParam> CoABreakDimParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : InsertFragmentParamEx
// Interface: ksInsertFragmentParamExDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksInsertFragmentParamExDisp, ksInsertFragmentParamEx, &CLSID_InsertFragmentParamEx, &DIID_ksInsertFragmentParamEx> CoInsertFragmentParamEx;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : BezierParam
// Interface: ksBezierParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksBezierParamDisp, ksBezierParam, &CLSID_BezierParam, &DIID_ksBezierParam> CoBezierParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : BezierPointParam
// Interface: ksBezierPointParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksBezierPointParamDisp, ksBezierPointParam, &CLSID_BezierPointParam, &DIID_ksBezierPointParam> CoBezierPointParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : DimTextParam
// Interface: ksDimTextParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksDimTextParamDisp, ksDimTextParam, &CLSID_DimTextParam, &DIID_ksDimTextParam> CoDimTextParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : LDimSourceParam
// Interface: ksLDimSourceParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksLDimSourceParamDisp, ksLDimSourceParam, &CLSID_LDimSourceParam, &DIID_ksLDimSourceParam> CoLDimSourceParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : DimDrawingParam
// Interface: ksDimDrawingParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksDimDrawingParamDisp, ksDimDrawingParam, &CLSID_DimDrawingParam, &DIID_ksDimDrawingParam> CoDimDrawingParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : LDimParam
// Interface: ksLDimParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksLDimParamDisp, ksLDimParam, &CLSID_LDimParam, &DIID_ksLDimParam> CoLDimParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ADimSourceParam
// Interface: ksADimSourceParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksADimSourceParamDisp, ksADimSourceParam, &CLSID_ADimSourceParam, &DIID_ksADimSourceParam> CoADimSourceParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : DimensionPartsParam
// Interface: ksDimensionPartsParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksDimensionPartsParamDisp, ksDimensionPartsParam, &CLSID_DimensionPartsParam, &DIID_ksDimensionPartsParam> CoDimensionPartsParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ADimParam
// Interface: ksADimParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksADimParamDisp, ksADimParam, &CLSID_ADimParam, &DIID_ksADimParam> CoADimParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : RBreakDrawingParam
// Interface: ksRBreakDrawingParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksRBreakDrawingParamDisp, ksRBreakDrawingParam, &CLSID_RBreakDrawingParam, &DIID_ksRBreakDrawingParam> CoRBreakDrawingParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : RBreakDimParam
// Interface: ksRBreakDimParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksRBreakDimParamDisp, ksRBreakDimParam, &CLSID_RBreakDimParam, &DIID_ksRBreakDimParam> CoRBreakDimParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : QualityItemParam
// Interface: ksQualityItemParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksQualityItemParamDisp, ksQualityItemParam, &CLSID_QualityItemParam, &DIID_ksQualityItemParam> CoQualityItemParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : QualityContensParam
// Interface: ksQualityContensParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksQualityContensParamDisp, ksQualityContensParam, &CLSID_QualityContensParam, &DIID_ksQualityContensParam> CoQualityContensParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Iterator
// Interface: ksIteratorDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksIteratorDisp, ksIterator, &CLSID_Iterator, &DIID_ksIterator> CoIterator;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Fragment
// Interface: ksFragmentDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksFragmentDisp, ksFragment, &CLSID_Fragment, &DIID_ksFragment> CoFragment;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : FragmentLib
// Interface: ksFragmentLibraryDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksFragmentLibraryDisp, ksFragmentLibrary, &CLSID_FragmentLib, &DIID_ksFragmentLibrary> CoFragmentLib;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : TechnicalDemandParam
// Interface: ksTechnicalDemandParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksTechnicalDemandParamDisp, ksTechnicalDemandParam, &CLSID_TechnicalDemandParam, &DIID_ksTechnicalDemandParam> CoTechnicalDemandParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : OrdinatedSourceParam
// Interface: ksOrdinatedSourceParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksOrdinatedSourceParamDisp, ksOrdinatedSourceParam, &CLSID_OrdinatedSourceParam, &DIID_ksOrdinatedSourceParam> CoOrdinatedSourceParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : OrdinatedDimParam
// Interface: ksOrdinatedDimParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksOrdinatedDimParamDisp, ksOrdinatedDimParam, &CLSID_OrdinatedDimParam, &DIID_ksOrdinatedDimParam> CoOrdinatedDimParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : OrdinatedDrawingParam
// Interface: ksOrdinatedDrawingParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksOrdinatedDrawingParamDisp, ksOrdinatedDrawingParam, &CLSID_OrdinatedDrawingParam, &DIID_ksOrdinatedDrawingParam> CoOrdinatedDrawingParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : SheetSize
// Interface: ksSheetSizeDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksSheetSizeDisp, ksSheetSize, &CLSID_SheetSize, &DIID_ksSheetSize> CoSheetSize;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : StandartSheet
// Interface: ksStandartSheetDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksStandartSheetDisp, ksStandartSheet, &CLSID_StandartSheet, &DIID_ksStandartSheet> CoStandartSheet;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : SheetPar
// Interface: ksSheetParDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksSheetParDisp, ksSheetPar, &CLSID_SheetPar, &DIID_ksSheetPar> CoSheetPar;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : DocumentParam
// Interface: ksDocumentParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksDocumentParamDisp, ksDocumentParam, &CLSID_DocumentParam, &DIID_ksDocumentParam> CoDocumentParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : DimensionsOptions
// Interface: ksDimensionsOptionsDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksDimensionsOptionsDisp, ksDimensionsOptions, &CLSID_DimensionsOptions, &DIID_ksDimensionsOptions> CoDimensionsOptions;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : SnapOptions
// Interface: ksSnapOptionsDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksSnapOptionsDisp, ksSnapOptions, &CLSID_SnapOptions, &DIID_ksSnapOptions> CoSnapOptions;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : LibraryStyleParam
// Interface: ksLibraryStyleParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksLibraryStyleParamDisp, ksLibraryStyleParam, &CLSID_LibraryStyleParam, &DIID_ksLibraryStyleParam> CoLibraryStyleParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Stamp
// Interface: ksStampDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksStampDisp, ksStamp, &CLSID_Stamp, &DIID_ksStamp> CoStamp;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : SheetOptions
// Interface: ksSheetOptionsDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksSheetOptionsDisp, ksSheetOptions, &CLSID_SheetOptions, &DIID_ksSheetOptions> CoSheetOptions;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : CurvePatternEx
// Interface: ksCurvePatternExDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCurvePatternExDisp, ksCurvePatternEx, &CLSID_CurvePatternEx, &DIID_ksCurvePatternEx> CoCurvePatternEx;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : CurveStyleParam
// Interface: ksCurveStyleParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCurveStyleParamDisp, ksCurveStyleParam, &CLSID_CurveStyleParam, &DIID_ksCurveStyleParam> CoCurveStyleParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : TextStyleParam
// Interface: ksTextStyleParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksTextStyleParamDisp, ksTextStyleParam, &CLSID_TextStyleParam, &DIID_ksTextStyleParam> CoTextStyleParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : HatchLineParam
// Interface: ksHatchLineParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksHatchLineParamDisp, ksHatchLineParam, &CLSID_HatchLineParam, &DIID_ksHatchLineParam> CoHatchLineParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : HatchStyleParam
// Interface: ksHatchStyleParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksHatchStyleParamDisp, ksHatchStyleParam, &CLSID_HatchStyleParam, &DIID_ksHatchStyleParam> CoHatchStyleParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : RectParam
// Interface: ksRectParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksRectParamDisp, ksRectParam, &CLSID_RectParam, &DIID_ksRectParam> CoRectParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ShelfPar
// Interface: ksShelfParDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksShelfParDisp, ksShelfPar, &CLSID_ShelfPar, &DIID_ksShelfPar> CoShelfPar;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : roughPar
// Interface: ksRoughParDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksRoughParDisp, ksRoughPar, &CLSID_roughPar, &DIID_ksRoughPar> CoroughPar;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : RoughParam
// Interface: ksRoughParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksRoughParamDisp, ksRoughParam, &CLSID_RoughParam, &DIID_ksRoughParam> CoRoughParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Char255
// Interface: ksChar255Disp
// *********************************************************************//
typedef TCoClassCreatorT<ksChar255Disp, ksChar255, &CLSID_Char255, &DIID_ksChar255> CoChar255;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : leaderParam
// Interface: ksLeaderParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksLeaderParamDisp, ksLeaderParam, &CLSID_leaderParam, &DIID_ksLeaderParam> ColeaderParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : posLeaderParam
// Interface: ksPosLeaderParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksPosLeaderParamDisp, ksPosLeaderParam, &CLSID_posLeaderParam, &DIID_ksPosLeaderParam> CoposLeaderParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : brandLeaderParam
// Interface: ksBrandLeaderParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksBrandLeaderParamDisp, ksBrandLeaderParam, &CLSID_brandLeaderParam, &DIID_ksBrandLeaderParam> CobrandLeaderParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : markerLeaderParam
// Interface: ksMarkerLeaderParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksMarkerLeaderParamDisp, ksMarkerLeaderParam, &CLSID_markerLeaderParam, &DIID_ksMarkerLeaderParam> ComarkerLeaderParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Type1
// Interface: ksType1Disp
// *********************************************************************//
typedef TCoClassCreatorT<ksType1Disp, ksType1, &CLSID_Type1, &DIID_ksType1> CoType1;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Type2
// Interface: ksType2Disp
// *********************************************************************//
typedef TCoClassCreatorT<ksType2Disp, ksType2, &CLSID_Type2, &DIID_ksType2> CoType2;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Type3
// Interface: ksType3Disp
// *********************************************************************//
typedef TCoClassCreatorT<ksType3Disp, ksType3, &CLSID_Type3, &DIID_ksType3> CoType3;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Type5
// Interface: ksType5Disp
// *********************************************************************//
typedef TCoClassCreatorT<ksType5Disp, ksType5, &CLSID_Type5, &DIID_ksType5> CoType5;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Type6
// Interface: ksType6Disp
// *********************************************************************//
typedef TCoClassCreatorT<ksType6Disp, ksType6, &CLSID_Type6, &DIID_ksType6> CoType6;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : phantom
// Interface: ksPhantomDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksPhantomDisp, ksPhantom, &CLSID_phantom, &DIID_ksPhantom> Cophantom;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : RequestInfo
// Interface: ksRequestInfoDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksRequestInfoDisp, ksRequestInfo, &CLSID_RequestInfo, &DIID_ksRequestInfo> CoRequestInfo;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ViewPointerParam
// Interface: ksViewPointerParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksViewPointerParamDisp, ksViewPointerParam, &CLSID_ViewPointerParam, &DIID_ksViewPointerParam> CoViewPointerParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : CutLineParam
// Interface: ksCutLineParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCutLineParamDisp, ksCutLineParam, &CLSID_CutLineParam, &DIID_ksCutLineParam> CoCutLineParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ToleranceBranch
// Interface: ksToleranceBranchDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksToleranceBranchDisp, ksToleranceBranch, &CLSID_ToleranceBranch, &DIID_ksToleranceBranch> CoToleranceBranch;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ToleranceParam
// Interface: ksToleranceParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksToleranceParamDisp, ksToleranceParam, &CLSID_ToleranceParam, &DIID_ksToleranceParam> CoToleranceParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : SpcColumnParam
// Interface: ksSpcColumnParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksSpcColumnParamDisp, ksSpcColumnParam, &CLSID_SpcColumnParam, &DIID_ksSpcColumnParam> CoSpcColumnParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : RecordTypeAttrParam
// Interface: ksRecordTypeAttrParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksRecordTypeAttrParamDisp, ksRecordTypeAttrParam, &CLSID_RecordTypeAttrParam, &DIID_ksRecordTypeAttrParam> CoRecordTypeAttrParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : NumberTypeAttrParam
// Interface: ksNumberTypeAttrParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksNumberTypeAttrParamDisp, ksNumberTypeAttrParam, &CLSID_NumberTypeAttrParam, &DIID_ksNumberTypeAttrParam> CoNumberTypeAttrParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : SpcStyleColumnParam
// Interface: ksSpcStyleColumnParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksSpcStyleColumnParamDisp, ksSpcStyleColumnParam, &CLSID_SpcStyleColumnParam, &DIID_ksSpcStyleColumnParam> CoSpcStyleColumnParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : SpcStyleSectionParam
// Interface: ksSpcStyleSectionParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksSpcStyleSectionParamDisp, ksSpcStyleSectionParam, &CLSID_SpcStyleSectionParam, &DIID_ksSpcStyleSectionParam> CoSpcStyleSectionParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : SpcSubSectionParam
// Interface: ksSpcSubSectionParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksSpcSubSectionParamDisp, ksSpcSubSectionParam, &CLSID_SpcSubSectionParam, &DIID_ksSpcSubSectionParam> CoSpcSubSectionParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : SpcTuningSectionParam
// Interface: ksSpcTuningSectionParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksSpcTuningSectionParamDisp, ksSpcTuningSectionParam, &CLSID_SpcTuningSectionParam, &DIID_ksSpcTuningSectionParam> CoSpcTuningSectionParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : SpcTuningStyleParam
// Interface: ksSpcTuningStyleParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksSpcTuningStyleParamDisp, ksSpcTuningStyleParam, &CLSID_SpcTuningStyleParam, &DIID_ksSpcTuningStyleParam> CoSpcTuningStyleParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : SpcStyleParam
// Interface: ksSpcStyleParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksSpcStyleParamDisp, ksSpcStyleParam, &CLSID_SpcStyleParam, &DIID_ksSpcStyleParam> CoSpcStyleParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : SpcDescrParam
// Interface: ksSpcDescrParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksSpcDescrParamDisp, ksSpcDescrParam, &CLSID_SpcDescrParam, &DIID_ksSpcDescrParam> CoSpcDescrParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : DocAttachedSpcParam
// Interface: ksDocAttachedSpcParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksDocAttachedSpcParamDisp, ksDocAttachedSpcParam, &CLSID_DocAttachedSpcParam, &DIID_ksDocAttachedSpcParam> CoDocAttachedSpcParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : SpcObjParam
// Interface: ksSpcObjParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksSpcObjParamDisp, ksSpcObjParam, &CLSID_SpcObjParam, &DIID_ksSpcObjParam> CoSpcObjParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : LibStyle
// Interface: ksLibStyleDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksLibStyleDisp, ksLibStyle, &CLSID_LibStyle, &DIID_ksLibStyle> CoLibStyle;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : DataBaseObject
// Interface: ksDataBaseObjectDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksDataBaseObjectDisp, ksDataBaseObject, &CLSID_DataBaseObject, &DIID_ksDataBaseObject> CoDataBaseObject;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : SpcDocument
// Interface: ksSpcDocumentDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksSpcDocumentDisp, ksSpcDocument, &CLSID_SpcDocument, &DIID_ksSpcDocument> CoSpcDocument;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Specification
// Interface: ksSpecificationDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksSpecificationDisp, ksSpecification, &CLSID_Specification, &DIID_ksSpecification> CoSpecification;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : DocumentTxt
// Interface: ksDocumentTxtDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksDocumentTxtDisp, ksDocumentTxt, &CLSID_DocumentTxt, &DIID_ksDocumentTxt> CoDocumentTxt;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : AttributeTypeParam
// Interface: ksAttributeTypeParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksAttributeTypeParamDisp, ksAttributeTypeParam, &CLSID_AttributeTypeParam, &DIID_ksAttributeTypeParam> CoAttributeTypeParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ColumnInfoParam
// Interface: ksColumnInfoParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksColumnInfoParamDisp, ksColumnInfoParam, &CLSID_ColumnInfoParam, &DIID_ksColumnInfoParam> CoColumnInfoParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : AttributeParam
// Interface: ksAttributeParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksAttributeParamDisp, ksAttributeParam, &CLSID_AttributeParam, &DIID_ksAttributeParam> CoAttributeParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Variable
// Interface: ksVariableDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksVariableDisp, ksVariable, &CLSID_Variable, &DIID_ksVariable> CoVariable;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : LibraryAttrTypeParam
// Interface: ksLibraryAttrTypeParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksLibraryAttrTypeParamDisp, ksLibraryAttrTypeParam, &CLSID_LibraryAttrTypeParam, &DIID_ksLibraryAttrTypeParam> CoLibraryAttrTypeParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : AttributeObject
// Interface: ksAttributeObjectDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksAttributeObjectDisp, ksAttributeObject, &CLSID_AttributeObject, &DIID_ksAttributeObject> CoAttributeObject;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : RequestInfo3D
// Interface: ksRequestInfo3DDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksRequestInfo3DDisp, ksRequestInfo3D, &CLSID_RequestInfo3D, &DIID_ksRequestInfo3D> CoRequestInfo3D;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : MateConstraint
// Interface: ksMateConstraintDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksMateConstraintDisp, ksMateConstraint, &CLSID_MateConstraint, &DIID_ksMateConstraint> CoMateConstraint;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : DefaultObject
// Interface: ksDefaultObjectDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksDefaultObjectDisp, ksDefaultObject, &CLSID_DefaultObject, &DIID_ksDefaultObject> CoDefaultObject;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : entity
// Interface: ksEntityDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksEntityDisp, ksEntity, &CLSID_entity, &DIID_ksEntity> Coentity;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : part
// Interface: ksPartDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksPartDisp, ksPart, &CLSID_part, &DIID_ksPart> Copart;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Document3D
// Interface: ksDocument3DDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksDocument3DDisp, ksDocument3D, &CLSID_Document3D, &DIID_ksDocument3D> CoDocument3D;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ModelLibrary
// Interface: ksModelLibraryDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksModelLibraryDisp, ksModelLibrary, &CLSID_ModelLibrary, &DIID_ksModelLibrary> CoModelLibrary;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : EntityCollection
// Interface: ksEntityCollectionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksEntityCollectionDisp, ksEntityCollection, &CLSID_EntityCollection, &DIID_ksEntityCollection> CoEntityCollection;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : VariableCollection
// Interface: ksVariableCollectionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksVariableCollectionDisp, ksVariableCollection, &CLSID_VariableCollection, &DIID_ksVariableCollection> CoVariableCollection;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : MateConstraintCollection
// Interface: ksMateConstraintCollectionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksMateConstraintCollectionDisp, ksMateConstraintCollection, &CLSID_MateConstraintCollection, &DIID_ksMateConstraintCollection> CoMateConstraintCollection;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : PartCollection
// Interface: ksPartCollectionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksPartCollectionDisp, ksPartCollection, &CLSID_PartCollection, &DIID_ksPartCollection> CoPartCollection;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : MeshPartArrayDefinition
// Interface: ksMeshPartArrayDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksMeshPartArrayDefinitionDisp, ksMeshPartArrayDefinition, &CLSID_MeshPartArrayDefinition, &DIID_ksMeshPartArrayDefinition> CoMeshPartArrayDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : CircularPartArrayDefinition
// Interface: ksCircularPartArrayDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCircularPartArrayDefinitionDisp, ksCircularPartArrayDefinition, &CLSID_CircularPartArrayDefinition, &DIID_ksCircularPartArrayDefinition> CoCircularPartArrayDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : CurvePartArrayDefinition
// Interface: ksCurvePartArrayDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCurvePartArrayDefinitionDisp, ksCurvePartArrayDefinition, &CLSID_CurvePartArrayDefinition, &DIID_ksCurvePartArrayDefinition> CoCurvePartArrayDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : DerivativePartArrayDefinition
// Interface: ksDerivativePartArrayDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksDerivativePartArrayDefinitionDisp, ksDerivativePartArrayDefinition, &CLSID_DerivativePartArrayDefinition, &DIID_ksDerivativePartArrayDefinition> CoDerivativePartArrayDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Axis2PlanesDefinition
// Interface: ksAxis2PlanesDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksAxis2PlanesDefinitionDisp, ksAxis2PlanesDefinition, &CLSID_Axis2PlanesDefinition, &DIID_ksAxis2PlanesDefinition> CoAxis2PlanesDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : AxisOperationsDefinition
// Interface: ksAxisOperationsDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksAxisOperationsDefinitionDisp, ksAxisOperationsDefinition, &CLSID_AxisOperationsDefinition, &DIID_ksAxisOperationsDefinition> CoAxisOperationsDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Axis2PointsDefinition
// Interface: ksAxis2PointsDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksAxis2PointsDefinitionDisp, ksAxis2PointsDefinition, &CLSID_Axis2PointsDefinition, &DIID_ksAxis2PointsDefinition> CoAxis2PointsDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : AxisEdgeDefinition
// Interface: ksAxisEdgeDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksAxisEdgeDefinitionDisp, ksAxisEdgeDefinition, &CLSID_AxisEdgeDefinition, &DIID_ksAxisEdgeDefinition> CoAxisEdgeDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : MeshCopyDefinition
// Interface: ksMeshCopyDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksMeshCopyDefinitionDisp, ksMeshCopyDefinition, &CLSID_MeshCopyDefinition, &DIID_ksMeshCopyDefinition> CoMeshCopyDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : CircularCopyDefinition
// Interface: ksCircularCopyDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCircularCopyDefinitionDisp, ksCircularCopyDefinition, &CLSID_CircularCopyDefinition, &DIID_ksCircularCopyDefinition> CoCircularCopyDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : CurveCopyDefinition
// Interface: ksCurveCopyDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCurveCopyDefinitionDisp, ksCurveCopyDefinition, &CLSID_CurveCopyDefinition, &DIID_ksCurveCopyDefinition> CoCurveCopyDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : MirrorCopyDefinition
// Interface: ksMirrorCopyDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksMirrorCopyDefinitionDisp, ksMirrorCopyDefinition, &CLSID_MirrorCopyDefinition, &DIID_ksMirrorCopyDefinition> CoMirrorCopyDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : MirrorCopyAllDefinition
// Interface: ksMirrorCopyAllDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksMirrorCopyAllDefinitionDisp, ksMirrorCopyAllDefinition, &CLSID_MirrorCopyAllDefinition, &DIID_ksMirrorCopyAllDefinition> CoMirrorCopyAllDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ConicSpiralDefinition
// Interface: ksConicSpiralDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksConicSpiralDefinitionDisp, ksConicSpiralDefinition, &CLSID_ConicSpiralDefinition, &DIID_ksConicSpiralDefinition> CoConicSpiralDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : CylindricSpiralDefinition
// Interface: ksCylindricSpiralDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCylindricSpiralDefinitionDisp, ksCylindricSpiralDefinition, &CLSID_CylindricSpiralDefinition, &DIID_ksCylindricSpiralDefinition> CoCylindricSpiralDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : PolyLineDefinition
// Interface: ksPolyLineDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksPolyLineDefinitionDisp, ksPolyLineDefinition, &CLSID_PolyLineDefinition, &DIID_ksPolyLineDefinition> CoPolyLineDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : SplineDefinition
// Interface: ksSplineDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksSplineDefinitionDisp, ksSplineDefinition, &CLSID_SplineDefinition, &DIID_ksSplineDefinition> CoSplineDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : faceDefinition
// Interface: ksFaceDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksFaceDefinitionDisp, ksFaceDefinition, &CLSID_faceDefinition, &DIID_ksFaceDefinition> CofaceDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : EdgeDefinition
// Interface: ksEdgeDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksEdgeDefinitionDisp, ksEdgeDefinition, &CLSID_EdgeDefinition, &DIID_ksEdgeDefinition> CoEdgeDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ChamferDefinition
// Interface: ksChamferDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksChamferDefinitionDisp, ksChamferDefinition, &CLSID_ChamferDefinition, &DIID_ksChamferDefinition> CoChamferDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : FilletDefinition
// Interface: ksFilletDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksFilletDefinitionDisp, ksFilletDefinition, &CLSID_FilletDefinition, &DIID_ksFilletDefinition> CoFilletDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : BaseExtrusionDefinition
// Interface: ksBaseExtrusionDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksBaseExtrusionDefinitionDisp, ksBaseExtrusionDefinition, &CLSID_BaseExtrusionDefinition, &DIID_ksBaseExtrusionDefinition> CoBaseExtrusionDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : BossExtrusionDefinition
// Interface: ksBossExtrusionDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksBossExtrusionDefinitionDisp, ksBossExtrusionDefinition, &CLSID_BossExtrusionDefinition, &DIID_ksBossExtrusionDefinition> CoBossExtrusionDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : CutExtrusionDefinition
// Interface: ksCutExtrusionDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCutExtrusionDefinitionDisp, ksCutExtrusionDefinition, &CLSID_CutExtrusionDefinition, &DIID_ksCutExtrusionDefinition> CoCutExtrusionDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ExtrusionSurfaceDefinition
// Interface: ksExtrusionSurfaceDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksExtrusionSurfaceDefinitionDisp, ksExtrusionSurfaceDefinition, &CLSID_ExtrusionSurfaceDefinition, &DIID_ksExtrusionSurfaceDefinition> CoExtrusionSurfaceDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : BaseLoftDefinition
// Interface: ksBaseLoftDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksBaseLoftDefinitionDisp, ksBaseLoftDefinition, &CLSID_BaseLoftDefinition, &DIID_ksBaseLoftDefinition> CoBaseLoftDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : BossLoftDefinition
// Interface: ksBossLoftDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksBossLoftDefinitionDisp, ksBossLoftDefinition, &CLSID_BossLoftDefinition, &DIID_ksBossLoftDefinition> CoBossLoftDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : CutLoftDefinition
// Interface: ksCutLoftDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCutLoftDefinitionDisp, ksCutLoftDefinition, &CLSID_CutLoftDefinition, &DIID_ksCutLoftDefinition> CoCutLoftDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : LoftSurfaceDefinition
// Interface: ksLoftSurfaceDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksLoftSurfaceDefinitionDisp, ksLoftSurfaceDefinition, &CLSID_LoftSurfaceDefinition, &DIID_ksLoftSurfaceDefinition> CoLoftSurfaceDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : InclineDefinition
// Interface: ksInclineDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksInclineDefinitionDisp, ksInclineDefinition, &CLSID_InclineDefinition, &DIID_ksInclineDefinition> CoInclineDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ShellDefinition
// Interface: ksShellDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksShellDefinitionDisp, ksShellDefinition, &CLSID_ShellDefinition, &DIID_ksShellDefinition> CoShellDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : BaseEvolutionDefinition
// Interface: ksBaseEvolutionDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksBaseEvolutionDefinitionDisp, ksBaseEvolutionDefinition, &CLSID_BaseEvolutionDefinition, &DIID_ksBaseEvolutionDefinition> CoBaseEvolutionDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : BossEvolutionDefinition
// Interface: ksBossEvolutionDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksBossEvolutionDefinitionDisp, ksBossEvolutionDefinition, &CLSID_BossEvolutionDefinition, &DIID_ksBossEvolutionDefinition> CoBossEvolutionDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : CutEvolutionDefinition
// Interface: ksCutEvolutionDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCutEvolutionDefinitionDisp, ksCutEvolutionDefinition, &CLSID_CutEvolutionDefinition, &DIID_ksCutEvolutionDefinition> CoCutEvolutionDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : EvolutionSurfaceDefinition
// Interface: ksEvolutionSurfaceDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksEvolutionSurfaceDefinitionDisp, ksEvolutionSurfaceDefinition, &CLSID_EvolutionSurfaceDefinition, &DIID_ksEvolutionSurfaceDefinition> CoEvolutionSurfaceDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : RibDefinition
// Interface: ksRibDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksRibDefinitionDisp, ksRibDefinition, &CLSID_RibDefinition, &DIID_ksRibDefinition> CoRibDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : CutByPlaneDefinition
// Interface: ksCutByPlaneDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCutByPlaneDefinitionDisp, ksCutByPlaneDefinition, &CLSID_CutByPlaneDefinition, &DIID_ksCutByPlaneDefinition> CoCutByPlaneDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : CutBySketchDefinition
// Interface: ksCutBySketchDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCutBySketchDefinitionDisp, ksCutBySketchDefinition, &CLSID_CutBySketchDefinition, &DIID_ksCutBySketchDefinition> CoCutBySketchDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : PlaneOffsetDefinition
// Interface: ksPlaneOffsetDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksPlaneOffsetDefinitionDisp, ksPlaneOffsetDefinition, &CLSID_PlaneOffsetDefinition, &DIID_ksPlaneOffsetDefinition> CoPlaneOffsetDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : PlaneAngleDefinition
// Interface: ksPlaneAngleDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksPlaneAngleDefinitionDisp, ksPlaneAngleDefinition, &CLSID_PlaneAngleDefinition, &DIID_ksPlaneAngleDefinition> CoPlaneAngleDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Plane3PointsDefinition
// Interface: ksPlane3PointsDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksPlane3PointsDefinitionDisp, ksPlane3PointsDefinition, &CLSID_Plane3PointsDefinition, &DIID_ksPlane3PointsDefinition> CoPlane3PointsDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : PlaneNormalToSurfaceDefinition
// Interface: ksPlaneNormalToSurfaceDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksPlaneNormalToSurfaceDefinitionDisp, ksPlaneNormalToSurfaceDefinition, &CLSID_PlaneNormalToSurfaceDefinition, &DIID_ksPlaneNormalToSurfaceDefinition> CoPlaneNormalToSurfaceDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : PlaneTangentToSurfaceDefinition
// Interface: ksPlaneTangentToSurfaceDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksPlaneTangentToSurfaceDefinitionDisp, ksPlaneTangentToSurfaceDefinition, &CLSID_PlaneTangentToSurfaceDefinition, &DIID_ksPlaneTangentToSurfaceDefinition> CoPlaneTangentToSurfaceDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : PlaneEdgePointDefinition
// Interface: ksPlaneEdgePointDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksPlaneEdgePointDefinitionDisp, ksPlaneEdgePointDefinition, &CLSID_PlaneEdgePointDefinition, &DIID_ksPlaneEdgePointDefinition> CoPlaneEdgePointDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : PlaneParallelDefinition
// Interface: ksPlaneParallelDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksPlaneParallelDefinitionDisp, ksPlaneParallelDefinition, &CLSID_PlaneParallelDefinition, &DIID_ksPlaneParallelDefinition> CoPlaneParallelDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : PlanePerpendicularDefinition
// Interface: ksPlanePerpendicularDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksPlanePerpendicularDefinitionDisp, ksPlanePerpendicularDefinition, &CLSID_PlanePerpendicularDefinition, &DIID_ksPlanePerpendicularDefinition> CoPlanePerpendicularDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : PlaneLineToEdgeDefinition
// Interface: ksPlaneLineToEdgeDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksPlaneLineToEdgeDefinitionDisp, ksPlaneLineToEdgeDefinition, &CLSID_PlaneLineToEdgeDefinition, &DIID_ksPlaneLineToEdgeDefinition> CoPlaneLineToEdgeDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : PlaneLineToPlaneDefinition
// Interface: ksPlaneLineToPlaneDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksPlaneLineToPlaneDefinitionDisp, ksPlaneLineToPlaneDefinition, &CLSID_PlaneLineToPlaneDefinition, &DIID_ksPlaneLineToPlaneDefinition> CoPlaneLineToPlaneDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ThinParam
// Interface: ksThinParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksThinParamDisp, ksThinParam, &CLSID_ThinParam, &DIID_ksThinParam> CoThinParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ExtrusionParam
// Interface: ksExtrusionParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksExtrusionParamDisp, ksExtrusionParam, &CLSID_ExtrusionParam, &DIID_ksExtrusionParam> CoExtrusionParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : RotatedParam
// Interface: ksRotatedParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksRotatedParamDisp, ksRotatedParam, &CLSID_RotatedParam, &DIID_ksRotatedParam> CoRotatedParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ColorParam
// Interface: ksColorParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksColorParamDisp, ksColorParam, &CLSID_ColorParam, &DIID_ksColorParam> CoColorParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : BaseRotatedDefinition
// Interface: ksBaseRotatedDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksBaseRotatedDefinitionDisp, ksBaseRotatedDefinition, &CLSID_BaseRotatedDefinition, &DIID_ksBaseRotatedDefinition> CoBaseRotatedDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : BossRotatedDefinition
// Interface: ksBossRotatedDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksBossRotatedDefinitionDisp, ksBossRotatedDefinition, &CLSID_BossRotatedDefinition, &DIID_ksBossRotatedDefinition> CoBossRotatedDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : CutRotatedDefinition
// Interface: ksCutRotatedDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCutRotatedDefinitionDisp, ksCutRotatedDefinition, &CLSID_CutRotatedDefinition, &DIID_ksCutRotatedDefinition> CoCutRotatedDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : RotatedSurfaceDefinition
// Interface: ksRotatedSurfaceDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksRotatedSurfaceDefinitionDisp, ksRotatedSurfaceDefinition, &CLSID_RotatedSurfaceDefinition, &DIID_ksRotatedSurfaceDefinition> CoRotatedSurfaceDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : SketchDefinition
// Interface: ksSketchDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksSketchDefinitionDisp, ksSketchDefinition, &CLSID_SketchDefinition, &DIID_ksSketchDefinition> CoSketchDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : RasterFormatParam
// Interface: ksRasterFormatParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksRasterFormatParamDisp, ksRasterFormatParam, &CLSID_RasterFormatParam, &DIID_ksRasterFormatParam> CoRasterFormatParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : AdditionFormatParam
// Interface: ksAdditionFormatParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksAdditionFormatParamDisp, ksAdditionFormatParam, &CLSID_AdditionFormatParam, &DIID_ksAdditionFormatParam> CoAdditionFormatParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ConstraintParam
// Interface: ksConstraintParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksConstraintParamDisp, ksConstraintParam, &CLSID_ConstraintParam, &DIID_ksConstraintParam> CoConstraintParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ImportedSurfaceDefinition
// Interface: ksImportedSurfaceDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksImportedSurfaceDefinitionDisp, ksImportedSurfaceDefinition, &CLSID_ImportedSurfaceDefinition, &DIID_ksImportedSurfaceDefinition> CoImportedSurfaceDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : FaceCollection
// Interface: ksFaceCollectionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksFaceCollectionDisp, ksFaceCollection, &CLSID_FaceCollection, &DIID_ksFaceCollection> CoFaceCollection;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : VertexDefinition
// Interface: ksVertexDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksVertexDefinitionDisp, ksVertexDefinition, &CLSID_VertexDefinition, &DIID_ksVertexDefinition> CoVertexDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Feature
// Interface: ksFeatureDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksFeatureDisp, ksFeature, &CLSID_Feature, &DIID_ksFeature> CoFeature;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Tessellation
// Interface: ksTessellationDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksTessellationDisp, ksTessellation, &CLSID_Tessellation, &DIID_ksTessellation> CoTessellation;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : facet
// Interface: ksFacetDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksFacetDisp, ksFacet, &CLSID_facet, &DIID_ksFacet> Cofacet;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Measurer
// Interface: ksMeasurerDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksMeasurerDisp, ksMeasurer, &CLSID_Measurer, &DIID_ksMeasurer> CoMeasurer;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : BodyCollection
// Interface: ksBodyCollectionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksBodyCollectionDisp, ksBodyCollection, &CLSID_BodyCollection, &DIID_ksBodyCollection> CoBodyCollection;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : body
// Interface: ksBodyDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksBodyDisp, ksBody, &CLSID_body, &DIID_ksBody> Cobody;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Surface
// Interface: ksSurfaceDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksSurfaceDisp, ksSurface, &CLSID_Surface, &DIID_ksSurface> CoSurface;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : EdgeCollection
// Interface: ksEdgeCollectionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksEdgeCollectionDisp, ksEdgeCollection, &CLSID_EdgeCollection, &DIID_ksEdgeCollection> CoEdgeCollection;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : OrientedEdge
// Interface: ksOrientedEdgeDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksOrientedEdgeDisp, ksOrientedEdge, &CLSID_OrientedEdge, &DIID_ksOrientedEdge> CoOrientedEdge;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : OrientedEdgeCollection
// Interface: ksOrientedEdgeCollectionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksOrientedEdgeCollectionDisp, ksOrientedEdgeCollection, &CLSID_OrientedEdgeCollection, &DIID_ksOrientedEdgeCollection> CoOrientedEdgeCollection;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Loop
// Interface: ksLoopDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksLoopDisp, ksLoop, &CLSID_Loop, &DIID_ksLoop> CoLoop;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : LoopCollection
// Interface: ksLoopCollectionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksLoopCollectionDisp, ksLoopCollection, &CLSID_LoopCollection, &DIID_ksLoopCollection> CoLoopCollection;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Curve3D
// Interface: ksCurve3DDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCurve3DDisp, ksCurve3D, &CLSID_Curve3D, &DIID_ksCurve3D> CoCurve3D;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : LineSeg3dParam
// Interface: ksLineSeg3dParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksLineSeg3dParamDisp, ksLineSeg3dParam, &CLSID_LineSeg3dParam, &DIID_ksLineSeg3dParam> CoLineSeg3dParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Circle3dParam
// Interface: ksCircle3dParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCircle3dParamDisp, ksCircle3dParam, &CLSID_Circle3dParam, &DIID_ksCircle3dParam> CoCircle3dParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Ellipse3dParam
// Interface: ksEllipse3dParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksEllipse3dParamDisp, ksEllipse3dParam, &CLSID_Ellipse3dParam, &DIID_ksEllipse3dParam> CoEllipse3dParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : PlaneParam
// Interface: ksPlaneParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksPlaneParamDisp, ksPlaneParam, &CLSID_PlaneParam, &DIID_ksPlaneParam> CoPlaneParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ConeParam
// Interface: ksConeParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksConeParamDisp, ksConeParam, &CLSID_ConeParam, &DIID_ksConeParam> CoConeParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : CylinderParam
// Interface: ksCylinderParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCylinderParamDisp, ksCylinderParam, &CLSID_CylinderParam, &DIID_ksCylinderParam> CoCylinderParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : SphereParam
// Interface: ksSphereParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksSphereParamDisp, ksSphereParam, &CLSID_SphereParam, &DIID_ksSphereParam> CoSphereParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : TorusParam
// Interface: ksTorusParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksTorusParamDisp, ksTorusParam, &CLSID_TorusParam, &DIID_ksTorusParam> CoTorusParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : NurbsPoint3dParam
// Interface: ksNurbsPoint3dParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksNurbsPoint3dParamDisp, ksNurbsPoint3dParam, &CLSID_NurbsPoint3dParam, &DIID_ksNurbsPoint3dParam> CoNurbsPoint3dParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : NurbsSurfaceParam
// Interface: ksNurbsSurfaceParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksNurbsSurfaceParamDisp, ksNurbsSurfaceParam, &CLSID_NurbsSurfaceParam, &DIID_ksNurbsSurfaceParam> CoNurbsSurfaceParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Nurbs3dParam
// Interface: ksNurbs3dParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksNurbs3dParamDisp, ksNurbs3dParam, &CLSID_Nurbs3dParam, &DIID_ksNurbs3dParam> CoNurbs3dParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : NurbsKnotCollection
// Interface: ksNurbsKnotCollectionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksNurbsKnotCollectionDisp, ksNurbsKnotCollection, &CLSID_NurbsKnotCollection, &DIID_ksNurbsKnotCollection> CoNurbsKnotCollection;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : NurbsPoint3dCollCollection
// Interface: ksNurbsPoint3dCollCollectionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksNurbsPoint3dCollCollectionDisp, ksNurbsPoint3dCollCollection, &CLSID_NurbsPoint3dCollCollection, &DIID_ksNurbsPoint3dCollCollection> CoNurbsPoint3dCollCollection;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : NurbsPoint3dCollection
// Interface: ksNurbsPoint3dCollectionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksNurbsPoint3dCollectionDisp, ksNurbsPoint3dCollection, &CLSID_NurbsPoint3dCollection, &DIID_ksNurbsPoint3dCollection> CoNurbsPoint3dCollection;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ViewProjection
// Interface: ksViewProjectionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksViewProjectionDisp, ksViewProjection, &CLSID_ViewProjection, &DIID_ksViewProjection> CoViewProjection;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ViewProjectionCollection
// Interface: ksViewProjectionCollectionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksViewProjectionCollectionDisp, ksViewProjectionCollection, &CLSID_ViewProjectionCollection, &DIID_ksViewProjectionCollection> CoViewProjectionCollection;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : SelectionMng
// Interface: ksSelectionMngDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksSelectionMngDisp, ksSelectionMng, &CLSID_SelectionMng, &DIID_ksSelectionMng> CoSelectionMng;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ChooseMng
// Interface: ksChooseMngDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksChooseMngDisp, ksChooseMng, &CLSID_ChooseMng, &DIID_ksChooseMng> CoChooseMng;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Arc3dParam
// Interface: ksArc3dParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksArc3dParamDisp, ksArc3dParam, &CLSID_Arc3dParam, &DIID_ksArc3dParam> CoArc3dParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : TreeNodeParam
// Interface: ksTreeNodeParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksTreeNodeParamDisp, ksTreeNodeParam, &CLSID_TreeNodeParam, &DIID_ksTreeNodeParam> CoTreeNodeParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : AssociationViewParam
// Interface: ksAssociationViewParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksAssociationViewParamDisp, ksAssociationViewParam, &CLSID_AssociationViewParam, &DIID_ksAssociationViewParam> CoAssociationViewParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ViewColorParam
// Interface: ksViewColorParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksViewColorParamDisp, ksViewColorParam, &CLSID_ViewColorParam, &DIID_ksViewColorParam> CoViewColorParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : AxisLineParam
// Interface: ksAxisLineParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksAxisLineParamDisp, ksAxisLineParam, &CLSID_AxisLineParam, &DIID_ksAxisLineParam> CoAxisLineParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : TextDocumentParam
// Interface: ksTextDocumentParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksTextDocumentParamDisp, ksTextDocumentParam, &CLSID_TextDocumentParam, &DIID_ksTextDocumentParam> CoTextDocumentParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : RemoteElementParam
// Interface: ksRemoteElementParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksRemoteElementParamDisp, ksRemoteElementParam, &CLSID_RemoteElementParam, &DIID_ksRemoteElementParam> CoRemoteElementParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : DeletedCopyCollection
// Interface: ksDeletedCopyCollectionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksDeletedCopyCollectionDisp, ksDeletedCopyCollection, &CLSID_DeletedCopyCollection, &DIID_ksDeletedCopyCollection> CoDeletedCopyCollection;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : CopyObjectParam
// Interface: ksCopyObjectParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCopyObjectParamDisp, ksCopyObjectParam, &CLSID_CopyObjectParam, &DIID_ksCopyObjectParam> CoCopyObjectParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ThreadDefinition
// Interface: ksThreadDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksThreadDefinitionDisp, ksThreadDefinition, &CLSID_ThreadDefinition, &DIID_ksThreadDefinition> CoThreadDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : OverlapObjectOptions
// Interface: ksOverlapObjectOptionsDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksOverlapObjectOptionsDisp, ksOverlapObjectOptions, &CLSID_OverlapObjectOptions, &DIID_ksOverlapObjectOptions> CoOverlapObjectOptions;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Attribute3D
// Interface: ksAttribute3DDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksAttribute3DDisp, ksAttribute3D, &CLSID_Attribute3D, &DIID_ksAttribute3D> CoAttribute3D;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Attribute3DCollection
// Interface: ksAttribute3DCollectionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksAttribute3DCollectionDisp, ksAttribute3DCollection, &CLSID_Attribute3DCollection, &DIID_ksAttribute3DCollection> CoAttribute3DCollection;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ComponentPositioner
// Interface: ksComponentPositionerDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksComponentPositionerDisp, ksComponentPositioner, &CLSID_ComponentPositioner, &DIID_ksComponentPositioner> CoComponentPositioner;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ObjectsFilter3D
// Interface: ksObjectsFilter3DDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksObjectsFilter3DDisp, ksObjectsFilter3D, &CLSID_ObjectsFilter3D, &DIID_ksObjectsFilter3D> CoObjectsFilter3D;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ParametrizationParam
// Interface: ksParametrizationParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksParametrizationParamDisp, ksParametrizationParam, &CLSID_ParametrizationParam, &DIID_ksParametrizationParam> CoParametrizationParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Macro3DDefinition
// Interface: ksMacro3DDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksMacro3DDefinitionDisp, ksMacro3DDefinition, &CLSID_Macro3DDefinition, &DIID_ksMacro3DDefinition> CoMacro3DDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : AxisConefaceDefinition
// Interface: ksAxisConefaceDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksAxisConefaceDefinitionDisp, ksAxisConefaceDefinition, &CLSID_AxisConefaceDefinition, &DIID_ksAxisConefaceDefinition> CoAxisConefaceDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : UnionComponentsDefinition
// Interface: ksUnionComponentsDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksUnionComponentsDefinitionDisp, ksUnionComponentsDefinition, &CLSID_UnionComponentsDefinition, &DIID_ksUnionComponentsDefinition> CoUnionComponentsDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : MoldCavityDefinition
// Interface: ksMoldCavityDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksMoldCavityDefinitionDisp, ksMoldCavityDefinition, &CLSID_MoldCavityDefinition, &DIID_ksMoldCavityDefinition> CoMoldCavityDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : Coordinate3dCollection
// Interface: ksCoordinate3dCollectionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksCoordinate3dCollectionDisp, ksCoordinate3dCollection, &CLSID_Coordinate3dCollection, &DIID_ksCoordinate3dCollection> CoCoordinate3dCollection;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : IntersectionResult
// Interface: ksIntersectionResultDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksIntersectionResultDisp, ksIntersectionResult, &CLSID_IntersectionResult, &DIID_ksIntersectionResult> CoIntersectionResult;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : PlaneMiddleDefinition
// Interface: ksPlaneMiddleDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksPlaneMiddleDefinitionDisp, ksPlaneMiddleDefinition, &CLSID_PlaneMiddleDefinition, &DIID_ksPlaneMiddleDefinition> CoPlaneMiddleDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ControlPointDefinition
// Interface: ksControlPointDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksControlPointDefinitionDisp, ksControlPointDefinition, &CLSID_ControlPointDefinition, &DIID_ksControlPointDefinition> CoControlPointDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ConjunctivePointDefinition
// Interface: ksConjunctivePointDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksConjunctivePointDefinitionDisp, ksConjunctivePointDefinition, &CLSID_ConjunctivePointDefinition, &DIID_ksConjunctivePointDefinition> CoConjunctivePointDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ChooseBodies
// Interface: ksChooseBodiesDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksChooseBodiesDisp, ksChooseBodies, &CLSID_ChooseBodies, &DIID_ksChooseBodies> CoChooseBodies;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : AggregateDefinition
// Interface: ksAggregateDefinitionDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksAggregateDefinitionDisp, ksAggregateDefinition, &CLSID_AggregateDefinition, &DIID_ksAggregateDefinition> CoAggregateDefinition;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ChangeLeaderParam
// Interface: ksChangeLeaderParamDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksChangeLeaderParamDisp, ksChangeLeaderParam, &CLSID_ChangeLeaderParam, &DIID_ksChangeLeaderParam> CoChangeLeaderParam;

// *********************************************************************//
// COCLASS DEFAULT INTERFACE CREATOR
// CoClass  : ChooseParts
// Interface: ksChoosePartsDisp
// *********************************************************************//
typedef TCoClassCreatorT<ksChoosePartsDisp, ksChooseParts, &CLSID_ChooseParts, &DIID_ksChooseParts> CoChooseParts;
#endif  //   __TLB_NO_INTERFACE_WRAPPERS


#if !defined(__TLB_NO_EVENT_WRAPPERS) && defined(USING_ATLVCL)
// *********************************************************************//
// CONNECTIONPOINT/EVENT PROXY
// CoClass         : Object2DNotify
// Event Interface : ksObject2DNotify
// *********************************************************************//
template <class T>
class TEvents_Object2DNotify : public IConnectionPointImpl<T,
                                                 &DIID_ksObject2DNotify,
                                                 CComUnkArray<CONNECTIONPOINT_ARRAY_SIZE> >
{
public:
  TOLEBOOL        Fire_ChangeActive(long objRef);
  TOLEBOOL        Fire_BeginDelete(long objRef);
  TOLEBOOL        Fire_Delete(long objRef);
  TOLEBOOL        Fire_BeginMove(long objRef);
  TOLEBOOL        Fire_Move(long objRef);
  TOLEBOOL        Fire_BeginRotate(long objRef);
  TOLEBOOL        Fire_Rotate(long objRef);
  TOLEBOOL        Fire_BeginScale(long objRef);
  TOLEBOOL        Fire_scale(long objRef);
  TOLEBOOL        Fire_BeginTransform(long objRef);
  TOLEBOOL        Fire_Transform(long objRef);
  TOLEBOOL        Fire_BeginCopy(long objRef);
  TOLEBOOL        Fire_copy(long objRef);
  TOLEBOOL        Fire_BeginSymmetry(long objRef);
  TOLEBOOL        Fire_Symmetry(long objRef);
  TOLEBOOL        Fire_BeginProcess(long pType, long objRef);
  TOLEBOOL        Fire_EndProcess(long pType);
  TOLEBOOL        Fire_CreateObject(long objRef);
  TOLEBOOL        Fire_UpdateObject(long objRef);
  TOLEBOOL        Fire_BeginDestroyObject(long objRef);
  TOLEBOOL        Fire_DestroyObject(long objRef);
protected:
  ksObject2DNotifyDisp m_EventIntfObj;
};

template <class T> TOLEBOOL
TEvents_Object2DNotify<T>::Fire_ChangeActive(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.ChangeActive(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object2DNotify<T>::Fire_BeginDelete(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginDelete(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object2DNotify<T>::Fire_Delete(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.Delete(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object2DNotify<T>::Fire_BeginMove(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginMove(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object2DNotify<T>::Fire_Move(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.Move(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object2DNotify<T>::Fire_BeginRotate(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginRotate(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object2DNotify<T>::Fire_Rotate(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.Rotate(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object2DNotify<T>::Fire_BeginScale(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginScale(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object2DNotify<T>::Fire_scale(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.scale(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object2DNotify<T>::Fire_BeginTransform(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginTransform(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object2DNotify<T>::Fire_Transform(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.Transform(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object2DNotify<T>::Fire_BeginCopy(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginCopy(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object2DNotify<T>::Fire_copy(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.copy(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object2DNotify<T>::Fire_BeginSymmetry(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginSymmetry(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object2DNotify<T>::Fire_Symmetry(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.Symmetry(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object2DNotify<T>::Fire_BeginProcess(long pType, long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginProcess(pType, objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object2DNotify<T>::Fire_EndProcess(long pType)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.EndProcess(pType);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object2DNotify<T>::Fire_CreateObject(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.CreateObject(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object2DNotify<T>::Fire_UpdateObject(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.UpdateObject(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object2DNotify<T>::Fire_BeginDestroyObject(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginDestroyObject(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object2DNotify<T>::Fire_DestroyObject(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.DestroyObject(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

// *********************************************************************//
// CONNECTIONPOINT/EVENT PROXY
// CoClass         : SelectionMngNotify
// Event Interface : ksSelectionMngNotify
// *********************************************************************//
template <class T>
class TEvents_SelectionMngNotify : public IConnectionPointImpl<T,
                                                 &DIID_ksSelectionMngNotify,
                                                 CComUnkArray<CONNECTIONPOINT_ARRAY_SIZE> >
{
public:
  TOLEBOOL        Fire_Select(TVariant obj);
  TOLEBOOL        Fire_Unselect(TVariant obj);
  TOLEBOOL        Fire_UnselectAll(void);
protected:
  ksSelectionMngNotifyDisp m_EventIntfObj;
};

template <class T> TOLEBOOL
TEvents_SelectionMngNotify<T>::Fire_Select(TVariant obj)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.Select(obj);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SelectionMngNotify<T>::Fire_Unselect(TVariant obj)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.Unselect(obj);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SelectionMngNotify<T>::Fire_UnselectAll(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.UnselectAll();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

// *********************************************************************//
// CONNECTIONPOINT/EVENT PROXY
// CoClass         : Document2DNotify
// Event Interface : ksDocument2DNotify
// *********************************************************************//
template <class T>
class TEvents_Document2DNotify : public IConnectionPointImpl<T,
                                                 &DIID_ksDocument2DNotify,
                                                 CComUnkArray<CONNECTIONPOINT_ARRAY_SIZE> >
{
public:
  TOLEBOOL        Fire_BeginRebuild(void);
  TOLEBOOL        Fire_Rebuild(void);
  TOLEBOOL        Fire_BeginChoiceMaterial(void);
  TOLEBOOL        Fire_ChoiceMaterial(BSTR material, double density);
  TOLEBOOL        Fire_BeginInsertFragment(void);
  TOLEBOOL        Fire_LocalFragmentEdit(LPDISPATCH newDoc, TOLEBOOL newFrw);
protected:
  ksDocument2DNotifyDisp m_EventIntfObj;
};

template <class T> TOLEBOOL
TEvents_Document2DNotify<T>::Fire_BeginRebuild(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginRebuild();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document2DNotify<T>::Fire_Rebuild(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.Rebuild();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document2DNotify<T>::Fire_BeginChoiceMaterial(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginChoiceMaterial();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document2DNotify<T>::Fire_ChoiceMaterial(BSTR material, double density)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.ChoiceMaterial(material, density);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document2DNotify<T>::Fire_BeginInsertFragment(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginInsertFragment();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document2DNotify<T>::Fire_LocalFragmentEdit(LPDISPATCH newDoc, TOLEBOOL newFrw)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.LocalFragmentEdit(newDoc, newFrw);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

// *********************************************************************//
// CONNECTIONPOINT/EVENT PROXY
// CoClass         : Document3DNotify
// Event Interface : ksDocument3DNotify
// *********************************************************************//
template <class T>
class TEvents_Document3DNotify : public IConnectionPointImpl<T,
                                                 &DIID_ksDocument3DNotify,
                                                 CComUnkArray<CONNECTIONPOINT_ARRAY_SIZE> >
{
public:
  TOLEBOOL        Fire_BeginRebuild(void);
  TOLEBOOL        Fire_Rebuild(void);
  TOLEBOOL        Fire_BeginChoiceMaterial(void);
  TOLEBOOL        Fire_ChoiceMaterial(BSTR material, double density);
  TOLEBOOL        Fire_BeginChoiceMarking(void);
  TOLEBOOL        Fire_ChoiceMarking(BSTR marking);
  TOLEBOOL        Fire_BeginSetPartFromFile(void);
  TOLEBOOL        Fire_BeginCreatePartFromFile(TOLEBOOL typeDoc, Kompas6api5_tlb::ksEntityPtr plane);
protected:
  ksDocument3DNotifyDisp m_EventIntfObj;
};

template <class T> TOLEBOOL
TEvents_Document3DNotify<T>::Fire_BeginRebuild(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginRebuild();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document3DNotify<T>::Fire_Rebuild(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.Rebuild();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document3DNotify<T>::Fire_BeginChoiceMaterial(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginChoiceMaterial();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document3DNotify<T>::Fire_ChoiceMaterial(BSTR material, double density)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.ChoiceMaterial(material, density);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document3DNotify<T>::Fire_BeginChoiceMarking(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginChoiceMarking();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document3DNotify<T>::Fire_ChoiceMarking(BSTR marking)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.ChoiceMarking(marking);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document3DNotify<T>::Fire_BeginSetPartFromFile(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginSetPartFromFile();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document3DNotify<T>::Fire_BeginCreatePartFromFile(TOLEBOOL typeDoc, 
                                                          Kompas6api5_tlb::ksEntityPtr plane)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginCreatePartFromFile(typeDoc, plane);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

// *********************************************************************//
// CONNECTIONPOINT/EVENT PROXY
// CoClass         : Object3DNotify
// Event Interface : ksObject3DNotify
// *********************************************************************//
template <class T>
class TEvents_Object3DNotify : public IConnectionPointImpl<T,
                                                 &DIID_ksObject3DNotify,
                                                 CComUnkArray<CONNECTIONPOINT_ARRAY_SIZE> >
{
public:
  TOLEBOOL        Fire_BeginDelete(LPDISPATCH obj);
  TOLEBOOL        Fire_Delete(LPDISPATCH obj);
  TOLEBOOL        Fire_excluded(LPDISPATCH obj, TOLEBOOL excluded);
  TOLEBOOL        Fire_hidden(LPDISPATCH obj, TOLEBOOL _hidden);
  TOLEBOOL        Fire_BeginPropertyChanged(LPDISPATCH obj);
  TOLEBOOL        Fire_PropertyChanged(LPDISPATCH obj);
  TOLEBOOL        Fire_BeginPlacementChanged(LPDISPATCH obj);
  TOLEBOOL        Fire_PlacementChanged(LPDISPATCH obj);
  TOLEBOOL        Fire_BeginProcess(long pType, LPDISPATCH obj);
  TOLEBOOL        Fire_EndProcess(long pType);
  TOLEBOOL        Fire_CreateObject(LPDISPATCH obj);
  TOLEBOOL        Fire_UpdateObject(LPDISPATCH obj);
protected:
  ksObject3DNotifyDisp m_EventIntfObj;
};

template <class T> TOLEBOOL
TEvents_Object3DNotify<T>::Fire_BeginDelete(LPDISPATCH obj)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginDelete(obj);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object3DNotify<T>::Fire_Delete(LPDISPATCH obj)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.Delete(obj);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object3DNotify<T>::Fire_excluded(LPDISPATCH obj, TOLEBOOL excluded)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.excluded(obj, excluded);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object3DNotify<T>::Fire_hidden(LPDISPATCH obj, TOLEBOOL _hidden)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.hidden(obj, _hidden);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object3DNotify<T>::Fire_BeginPropertyChanged(LPDISPATCH obj)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginPropertyChanged(obj);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object3DNotify<T>::Fire_PropertyChanged(LPDISPATCH obj)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.PropertyChanged(obj);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object3DNotify<T>::Fire_BeginPlacementChanged(LPDISPATCH obj)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginPlacementChanged(obj);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object3DNotify<T>::Fire_PlacementChanged(LPDISPATCH obj)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.PlacementChanged(obj);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object3DNotify<T>::Fire_BeginProcess(long pType, LPDISPATCH obj)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginProcess(pType, obj);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object3DNotify<T>::Fire_EndProcess(long pType)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.EndProcess(pType);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object3DNotify<T>::Fire_CreateObject(LPDISPATCH obj)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.CreateObject(obj);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Object3DNotify<T>::Fire_UpdateObject(LPDISPATCH obj)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.UpdateObject(obj);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

// *********************************************************************//
// CONNECTIONPOINT/EVENT PROXY
// CoClass         : SpcDocumentNotify
// Event Interface : ksSpcDocumentNotify
// *********************************************************************//
template <class T>
class TEvents_SpcDocumentNotify : public IConnectionPointImpl<T,
                                                 &DIID_ksSpcDocumentNotify,
                                                 CComUnkArray<CONNECTIONPOINT_ARRAY_SIZE> >
{
public:
  TOLEBOOL        Fire_DocumentBeginAdd(void);
  TOLEBOOL        Fire_DocumentAdd(BSTR docName);
  TOLEBOOL        Fire_DocumentBeginRemove(BSTR docName);
  TOLEBOOL        Fire_DocumentRemove(BSTR docName);
  TOLEBOOL        Fire_SpcStyleBeginChange(BSTR libName, long numb);
  TOLEBOOL        Fire_SpcStyleChange(BSTR libName, long numb);
protected:
  ksSpcDocumentNotifyDisp m_EventIntfObj;
};

template <class T> TOLEBOOL
TEvents_SpcDocumentNotify<T>::Fire_DocumentBeginAdd(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.DocumentBeginAdd();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcDocumentNotify<T>::Fire_DocumentAdd(BSTR docName)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.DocumentAdd(docName);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcDocumentNotify<T>::Fire_DocumentBeginRemove(BSTR docName)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.DocumentBeginRemove(docName);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcDocumentNotify<T>::Fire_DocumentRemove(BSTR docName)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.DocumentRemove(docName);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcDocumentNotify<T>::Fire_SpcStyleBeginChange(BSTR libName, long numb)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.SpcStyleBeginChange(libName, numb);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcDocumentNotify<T>::Fire_SpcStyleChange(BSTR libName, long numb)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.SpcStyleChange(libName, numb);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

// *********************************************************************//
// CONNECTIONPOINT/EVENT PROXY
// CoClass         : SpcObjectNotify
// Event Interface : ksSpcObjectNotify
// *********************************************************************//
template <class T>
class TEvents_SpcObjectNotify : public IConnectionPointImpl<T,
                                                 &DIID_ksSpcObjectNotify,
                                                 CComUnkArray<CONNECTIONPOINT_ARRAY_SIZE> >
{
public:
  TOLEBOOL        Fire_BeginDelete(long objRef);
  TOLEBOOL        Fire_Delete(long objRef);
  TOLEBOOL        Fire_CellDblClick(long objRef, long number);
  TOLEBOOL        Fire_CellBeginEdit(long objRef, long number);
  TOLEBOOL        Fire_ChangeCurrent(long objRef);
  TOLEBOOL        Fire_DocumentBeginAdd(long objRef);
  TOLEBOOL        Fire_DocumentAdd(long objRef, BSTR docName);
  TOLEBOOL        Fire_DocumentRemove(long objRef, BSTR docName);
  TOLEBOOL        Fire_BeginGeomChange(long objRef);
  TOLEBOOL        Fire_GeomChange(long objRef);
  TOLEBOOL        Fire_BeginProcess(long pType, long objRef);
  TOLEBOOL        Fire_EndProcess(long pType);
  TOLEBOOL        Fire_CreateObject(long objRef);
  TOLEBOOL        Fire_UpdateObject(long objRef);
  TOLEBOOL        Fire_BeginCopy(long objRef);
  TOLEBOOL        Fire_copy(long objRef);
protected:
  ksSpcObjectNotifyDisp m_EventIntfObj;
};

template <class T> TOLEBOOL
TEvents_SpcObjectNotify<T>::Fire_BeginDelete(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginDelete(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcObjectNotify<T>::Fire_Delete(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.Delete(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcObjectNotify<T>::Fire_CellDblClick(long objRef, long number)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.CellDblClick(objRef, number);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcObjectNotify<T>::Fire_CellBeginEdit(long objRef, long number)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.CellBeginEdit(objRef, number);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcObjectNotify<T>::Fire_ChangeCurrent(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.ChangeCurrent(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcObjectNotify<T>::Fire_DocumentBeginAdd(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.DocumentBeginAdd(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcObjectNotify<T>::Fire_DocumentAdd(long objRef, BSTR docName)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.DocumentAdd(objRef, docName);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcObjectNotify<T>::Fire_DocumentRemove(long objRef, BSTR docName)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.DocumentRemove(objRef, docName);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcObjectNotify<T>::Fire_BeginGeomChange(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginGeomChange(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcObjectNotify<T>::Fire_GeomChange(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.GeomChange(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcObjectNotify<T>::Fire_BeginProcess(long pType, long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginProcess(pType, objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcObjectNotify<T>::Fire_EndProcess(long pType)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.EndProcess(pType);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcObjectNotify<T>::Fire_CreateObject(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.CreateObject(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcObjectNotify<T>::Fire_UpdateObject(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.UpdateObject(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcObjectNotify<T>::Fire_BeginCopy(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginCopy(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcObjectNotify<T>::Fire_copy(long objRef)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.copy(objRef);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

// *********************************************************************//
// CONNECTIONPOINT/EVENT PROXY
// CoClass         : App
// Event Interface : ksKompasObjectNotify
// *********************************************************************//
template <class T>
class TEvents_App : public IConnectionPointImpl<T,
                                                 &DIID_ksKompasObjectNotify,
                                                 CComUnkArray<CONNECTIONPOINT_ARRAY_SIZE> >
{
public:
  TOLEBOOL        Fire_CreateDocument(LPDISPATCH newDoc, long docType);
  TOLEBOOL        Fire_BeginOpenDocument(BSTR fileName);
  TOLEBOOL        Fire_OpenDocument(LPDISPATCH newDoc, long docType);
  TOLEBOOL        Fire_ChangeActiveDocument(LPDISPATCH newDoc, long docType);
  TOLEBOOL        Fire_ApplicationDestroy(void);
  TOLEBOOL        Fire_BeginCreate(long docType);
  TOLEBOOL        Fire_BeginOpenFile(void);
  TOLEBOOL        Fire_BeginCloseAllDocument(void);
  TOLEBOOL        Fire_KeyDown(long* key, long flags, TOLEBOOL systemKey);
  TOLEBOOL        Fire_KeyUp(long* key, long flags, TOLEBOOL systemKey);
  TOLEBOOL        Fire_KeyPress(long* key, TOLEBOOL systemKey);
  TOLEBOOL        Fire_BeginReguestFiles(long requestID, TVariant* files);
protected:
  ksKompasObjectNotifyDisp m_EventIntfObj;
};

template <class T> TOLEBOOL
TEvents_App<T>::Fire_CreateDocument(LPDISPATCH newDoc, long docType)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.CreateDocument(newDoc, docType);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_App<T>::Fire_BeginOpenDocument(BSTR fileName)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginOpenDocument(fileName);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_App<T>::Fire_OpenDocument(LPDISPATCH newDoc, long docType)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.OpenDocument(newDoc, docType);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_App<T>::Fire_ChangeActiveDocument(LPDISPATCH newDoc, long docType)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.ChangeActiveDocument(newDoc, docType);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_App<T>::Fire_ApplicationDestroy(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.ApplicationDestroy();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_App<T>::Fire_BeginCreate(long docType)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginCreate(docType);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_App<T>::Fire_BeginOpenFile(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginOpenFile();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_App<T>::Fire_BeginCloseAllDocument(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginCloseAllDocument();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_App<T>::Fire_KeyDown(long* key, long flags, TOLEBOOL systemKey)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.KeyDown(key, flags, systemKey);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_App<T>::Fire_KeyUp(long* key, long flags, TOLEBOOL systemKey)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.KeyUp(key, flags, systemKey);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_App<T>::Fire_KeyPress(long* key, TOLEBOOL systemKey)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.KeyPress(key, systemKey);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_App<T>::Fire_BeginReguestFiles(long requestID, TVariant* files)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginReguestFiles(requestID, files);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

// *********************************************************************//
// CONNECTIONPOINT/EVENT PROXY
// CoClass         : Document2D
// Event Interface : ksDocumentFileNotify
// *********************************************************************//
template <class T>
class TEvents_Document2D : public IConnectionPointImpl<T,
                                                 &DIID_ksDocumentFileNotify,
                                                 CComUnkArray<CONNECTIONPOINT_ARRAY_SIZE> >
{
public:
  TOLEBOOL        Fire_BeginCloseDocument(void);
  TOLEBOOL        Fire_CloseDocument(void);
  TOLEBOOL        Fire_BeginSaveDocument(BSTR fileName);
  TOLEBOOL        Fire_SaveDocument(void);
  TOLEBOOL        Fire_Activate(void);
  TOLEBOOL        Fire_Deactivate(void);
  TOLEBOOL        Fire_BeginSaveAsDocument(void);
  TOLEBOOL        Fire_DocumentFrameOpen(LPDISPATCH v);
  TOLEBOOL        Fire_ProcessActivate(long iD);
  TOLEBOOL        Fire_ProcessDeactivate(long iD);
protected:
  ksDocumentFileNotifyDisp m_EventIntfObj;
};

template <class T> TOLEBOOL
TEvents_Document2D<T>::Fire_BeginCloseDocument(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginCloseDocument();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document2D<T>::Fire_CloseDocument(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.CloseDocument();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document2D<T>::Fire_BeginSaveDocument(BSTR fileName)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginSaveDocument(fileName);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document2D<T>::Fire_SaveDocument(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.SaveDocument();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document2D<T>::Fire_Activate(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.Activate();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document2D<T>::Fire_Deactivate(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.Deactivate();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document2D<T>::Fire_BeginSaveAsDocument(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginSaveAsDocument();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document2D<T>::Fire_DocumentFrameOpen(LPDISPATCH v)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.DocumentFrameOpen(v);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document2D<T>::Fire_ProcessActivate(long iD)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.ProcessActivate(iD);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document2D<T>::Fire_ProcessDeactivate(long iD)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.ProcessDeactivate(iD);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

// *********************************************************************//
// CONNECTIONPOINT/EVENT PROXY
// CoClass         : Stamp
// Event Interface : ksStampNotify
// *********************************************************************//
template <class T>
class TEvents_Stamp : public IConnectionPointImpl<T,
                                                 &DIID_ksStampNotify,
                                                 CComUnkArray<CONNECTIONPOINT_ARRAY_SIZE> >
{
public:
  TOLEBOOL        Fire_BeginEditStamp(void);
  TOLEBOOL        Fire_EndEditStamp(TOLEBOOL editResult);
  TOLEBOOL        Fire_StampCellDblClick(long number);
  TOLEBOOL        Fire_StampCellBeginEdit(long number);
  TOLEBOOL        Fire_StampBeginClearCells(TVariant cells);
protected:
  ksStampNotifyDisp m_EventIntfObj;
};

template <class T> TOLEBOOL
TEvents_Stamp<T>::Fire_BeginEditStamp(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginEditStamp();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Stamp<T>::Fire_EndEditStamp(TOLEBOOL editResult)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.EndEditStamp(editResult);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Stamp<T>::Fire_StampCellDblClick(long number)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.StampCellDblClick(number);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Stamp<T>::Fire_StampCellBeginEdit(long number)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.StampCellBeginEdit(number);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Stamp<T>::Fire_StampBeginClearCells(TVariant cells)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.StampBeginClearCells(cells);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

// *********************************************************************//
// CONNECTIONPOINT/EVENT PROXY
// CoClass         : SpcDocument
// Event Interface : ksDocumentFileNotify
// *********************************************************************//
template <class T>
class TEvents_SpcDocument : public IConnectionPointImpl<T,
                                                 &DIID_ksDocumentFileNotify,
                                                 CComUnkArray<CONNECTIONPOINT_ARRAY_SIZE> >
{
public:
  TOLEBOOL        Fire_BeginCloseDocument(void);
  TOLEBOOL        Fire_CloseDocument(void);
  TOLEBOOL        Fire_BeginSaveDocument(BSTR fileName);
  TOLEBOOL        Fire_SaveDocument(void);
  TOLEBOOL        Fire_Activate(void);
  TOLEBOOL        Fire_Deactivate(void);
  TOLEBOOL        Fire_BeginSaveAsDocument(void);
  TOLEBOOL        Fire_DocumentFrameOpen(LPDISPATCH v);
  TOLEBOOL        Fire_ProcessActivate(long iD);
  TOLEBOOL        Fire_ProcessDeactivate(long iD);
protected:
  ksDocumentFileNotifyDisp m_EventIntfObj;
};

template <class T> TOLEBOOL
TEvents_SpcDocument<T>::Fire_BeginCloseDocument(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginCloseDocument();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcDocument<T>::Fire_CloseDocument(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.CloseDocument();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcDocument<T>::Fire_BeginSaveDocument(BSTR fileName)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginSaveDocument(fileName);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcDocument<T>::Fire_SaveDocument(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.SaveDocument();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcDocument<T>::Fire_Activate(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.Activate();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcDocument<T>::Fire_Deactivate(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.Deactivate();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcDocument<T>::Fire_BeginSaveAsDocument(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginSaveAsDocument();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcDocument<T>::Fire_DocumentFrameOpen(LPDISPATCH v)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.DocumentFrameOpen(v);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcDocument<T>::Fire_ProcessActivate(long iD)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.ProcessActivate(iD);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SpcDocument<T>::Fire_ProcessDeactivate(long iD)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.ProcessDeactivate(iD);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

// *********************************************************************//
// CONNECTIONPOINT/EVENT PROXY
// CoClass         : Specification
// Event Interface : ksSpecificationNotify
// *********************************************************************//
template <class T>
class TEvents_Specification : public IConnectionPointImpl<T,
                                                 &DIID_ksSpecificationNotify,
                                                 CComUnkArray<CONNECTIONPOINT_ARRAY_SIZE> >
{
public:
  TOLEBOOL        Fire_TuningSpcStyleBeginChange(BSTR libName, long numb);
  TOLEBOOL        Fire_TuningSpcStyleChange(BSTR libName, long numb, TOLEBOOL isOk);
  TOLEBOOL        Fire_ChangeCurrentSpcDescription(BSTR libName, long numb);
  TOLEBOOL        Fire_SpcDescriptionAdd(BSTR libName, long numb);
  TOLEBOOL        Fire_SpcDescriptionRemove(BSTR libName, long numb);
  TOLEBOOL        Fire_SpcDescriptionBeginEdit(BSTR libName, long numb);
  TOLEBOOL        Fire_SpcDescriptionEdit(BSTR libName, long numb, TOLEBOOL isOk);
  TOLEBOOL        Fire_SynchronizationBegin(void);
  TOLEBOOL        Fire_Synchronization(void);
  TOLEBOOL        Fire_BeginCalcPositions(void);
  TOLEBOOL        Fire_CalcPositions(void);
  TOLEBOOL        Fire_BeginCreateObject(long typeObj);
protected:
  ksSpecificationNotifyDisp m_EventIntfObj;
};

template <class T> TOLEBOOL
TEvents_Specification<T>::Fire_TuningSpcStyleBeginChange(BSTR libName, long numb)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.TuningSpcStyleBeginChange(libName, numb);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Specification<T>::Fire_TuningSpcStyleChange(BSTR libName, long numb, TOLEBOOL isOk)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.TuningSpcStyleChange(libName, numb, isOk);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Specification<T>::Fire_ChangeCurrentSpcDescription(BSTR libName, long numb)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.ChangeCurrentSpcDescription(libName, numb);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Specification<T>::Fire_SpcDescriptionAdd(BSTR libName, long numb)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.SpcDescriptionAdd(libName, numb);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Specification<T>::Fire_SpcDescriptionRemove(BSTR libName, long numb)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.SpcDescriptionRemove(libName, numb);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Specification<T>::Fire_SpcDescriptionBeginEdit(BSTR libName, long numb)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.SpcDescriptionBeginEdit(libName, numb);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Specification<T>::Fire_SpcDescriptionEdit(BSTR libName, long numb, TOLEBOOL isOk)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.SpcDescriptionEdit(libName, numb, isOk);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Specification<T>::Fire_SynchronizationBegin(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.SynchronizationBegin();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Specification<T>::Fire_Synchronization(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.Synchronization();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Specification<T>::Fire_BeginCalcPositions(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginCalcPositions();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Specification<T>::Fire_CalcPositions(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.CalcPositions();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Specification<T>::Fire_BeginCreateObject(long typeObj)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginCreateObject(typeObj);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

// *********************************************************************//
// CONNECTIONPOINT/EVENT PROXY
// CoClass         : DocumentTxt
// Event Interface : ksDocumentFileNotify
// *********************************************************************//
template <class T>
class TEvents_DocumentTxt : public IConnectionPointImpl<T,
                                                 &DIID_ksDocumentFileNotify,
                                                 CComUnkArray<CONNECTIONPOINT_ARRAY_SIZE> >
{
public:
  TOLEBOOL        Fire_BeginCloseDocument(void);
  TOLEBOOL        Fire_CloseDocument(void);
  TOLEBOOL        Fire_BeginSaveDocument(BSTR fileName);
  TOLEBOOL        Fire_SaveDocument(void);
  TOLEBOOL        Fire_Activate(void);
  TOLEBOOL        Fire_Deactivate(void);
  TOLEBOOL        Fire_BeginSaveAsDocument(void);
  TOLEBOOL        Fire_DocumentFrameOpen(LPDISPATCH v);
  TOLEBOOL        Fire_ProcessActivate(long iD);
  TOLEBOOL        Fire_ProcessDeactivate(long iD);
protected:
  ksDocumentFileNotifyDisp m_EventIntfObj;
};

template <class T> TOLEBOOL
TEvents_DocumentTxt<T>::Fire_BeginCloseDocument(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginCloseDocument();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_DocumentTxt<T>::Fire_CloseDocument(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.CloseDocument();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_DocumentTxt<T>::Fire_BeginSaveDocument(BSTR fileName)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginSaveDocument(fileName);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_DocumentTxt<T>::Fire_SaveDocument(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.SaveDocument();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_DocumentTxt<T>::Fire_Activate(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.Activate();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_DocumentTxt<T>::Fire_Deactivate(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.Deactivate();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_DocumentTxt<T>::Fire_BeginSaveAsDocument(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginSaveAsDocument();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_DocumentTxt<T>::Fire_DocumentFrameOpen(LPDISPATCH v)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.DocumentFrameOpen(v);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_DocumentTxt<T>::Fire_ProcessActivate(long iD)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.ProcessActivate(iD);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_DocumentTxt<T>::Fire_ProcessDeactivate(long iD)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.ProcessDeactivate(iD);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

// *********************************************************************//
// CONNECTIONPOINT/EVENT PROXY
// CoClass         : Document3D
// Event Interface : ksDocumentFileNotify
// *********************************************************************//
template <class T>
class TEvents_Document3D : public IConnectionPointImpl<T,
                                                 &DIID_ksDocumentFileNotify,
                                                 CComUnkArray<CONNECTIONPOINT_ARRAY_SIZE> >
{
public:
  TOLEBOOL        Fire_BeginCloseDocument(void);
  TOLEBOOL        Fire_CloseDocument(void);
  TOLEBOOL        Fire_BeginSaveDocument(BSTR fileName);
  TOLEBOOL        Fire_SaveDocument(void);
  TOLEBOOL        Fire_Activate(void);
  TOLEBOOL        Fire_Deactivate(void);
  TOLEBOOL        Fire_BeginSaveAsDocument(void);
  TOLEBOOL        Fire_DocumentFrameOpen(LPDISPATCH v);
  TOLEBOOL        Fire_ProcessActivate(long iD);
  TOLEBOOL        Fire_ProcessDeactivate(long iD);
protected:
  ksDocumentFileNotifyDisp m_EventIntfObj;
};

template <class T> TOLEBOOL
TEvents_Document3D<T>::Fire_BeginCloseDocument(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginCloseDocument();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document3D<T>::Fire_CloseDocument(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.CloseDocument();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document3D<T>::Fire_BeginSaveDocument(BSTR fileName)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginSaveDocument(fileName);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document3D<T>::Fire_SaveDocument(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.SaveDocument();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document3D<T>::Fire_Activate(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.Activate();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document3D<T>::Fire_Deactivate(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.Deactivate();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document3D<T>::Fire_BeginSaveAsDocument(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.BeginSaveAsDocument();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document3D<T>::Fire_DocumentFrameOpen(LPDISPATCH v)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.DocumentFrameOpen(v);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document3D<T>::Fire_ProcessActivate(long iD)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.ProcessActivate(iD);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_Document3D<T>::Fire_ProcessDeactivate(long iD)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.ProcessDeactivate(iD);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

// *********************************************************************//
// CONNECTIONPOINT/EVENT PROXY
// CoClass         : SelectionMng
// Event Interface : ksSelectionMngNotify
// *********************************************************************//
template <class T>
class TEvents_SelectionMng : public IConnectionPointImpl<T,
                                                 &DIID_ksSelectionMngNotify,
                                                 CComUnkArray<CONNECTIONPOINT_ARRAY_SIZE> >
{
public:
  TOLEBOOL        Fire_Select(TVariant obj);
  TOLEBOOL        Fire_Unselect(TVariant obj);
  TOLEBOOL        Fire_UnselectAll(void);
protected:
  ksSelectionMngNotifyDisp m_EventIntfObj;
};

template <class T> TOLEBOOL
TEvents_SelectionMng<T>::Fire_Select(TVariant obj)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.Select(obj);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SelectionMng<T>::Fire_Unselect(TVariant obj)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.Unselect(obj);
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

template <class T> TOLEBOOL
TEvents_SelectionMng<T>::Fire_UnselectAll(void)
{
  T * pT = (T*)this;
  pT->Lock();
  IUnknown ** pp = m_vec.begin();
  while (pp < m_vec.end())
  {
    if (*pp != NULL)
    {
      m_EventIntfObj.Attach(*pp);
      m_EventIntfObj.UnselectAll();
      m_EventIntfObj.Attach(0);
    }
    pp++;
  }
  pT->Unlock();
}

#endif  //   __TLB_NO_EVENT_WRAPPERS

};     // namespace Kompas6api5_tlb

#if !defined(NO_IMPLICIT_NAMESPACE_USE)
using  namespace Kompas6api5_tlb;
#endif

#pragma option pop

#endif // __Kompas6API5_TLB_h__
