Hi

Yes, I defined the function processInputPoint in filter.cpp

Thanks for replay,

Sankar.M

------

Hi

I am creating newderived class “AsdkInputPointFilter" from Abstract class "AcEdInputPointFilter" in filter.h.

In Test 5.cpp file i trying to createreference from my derived class like this

AsdkInputPointFilter myFilter;

This gives compile error like this

e:\sankar\autocad objectarx 2007\testing project\copy of test 5\test 5\test 5.cpp(26) : error C2259: 'AsdkInputPointFilter' : cannot instantiate abstract class

due to following members:

'Acad::ErrorStatus AcEdInputPointFilter::processInputPoint(bool &,AcGePoint3d &,bool &,bool &,ACHAR *&,bool &,AcGiViewportDraw *,AcApDocument *,bool,int,const AcGePoint3d &,const AcGePoint3d &,const AcGePoint3d &,const AcGePoint3d &,const AcGePoint3d &,AcDb::OsnapMask,const AcArray<T> &,AcDb::OsnapMask,const AcArray<T> &,const AcArray<AcDbObjectId> &,const AcArray<AcDbObjectIdArray,R> &,const AcArray<int> &,const AcArray<AcDbObjectId> &,const AcArray<AcDbObjectIdArray,R> &,const AcArray<int> &,const AcArray<AcGeCurve3d *> &,const AcGePoint3d &,const ACHAR *)' : is abstract

with

[

T=AcDbCustomOsnapMode *,

R=AcArrayObjectCopyReallocator<AcDbObjectIdArray>

]

Sankar.M

VEST Inc.

// Test 5.cpp

// Test 5.cpp : Defines the entry point for the console application.

#include"stdafx.h"

#include"filter.h"

AsdkInputPointFilter myFilter;

int _tmain(int argc, _TCHAR* argv[])

{

return 0;

}

stdafx.cpp

/ stdafx.cpp : source file that includes just the standard includes

// Test 5.pch will be the pre-compiled header

// stdafx.obj will contain the pre-compiled type information

#include"stdafx.h"

// TODO: reference any additional headers you need in STDAFX.H

// and not in this file

// filter.cpp

// AsdkInputPointFilter methods

//

#include"stdafx.h"

#include"acdbabb.h"

#include"adeskabb.h"

#include"aced.h"

#include"acgi.h"

#include"dbents.h"

//#include "VedbCavity.h"

#include"filter.h"

Acad::ErrorStatus

AsdkInputPointFilter::processInputPoint(

bool& changedPoint,

AcGePoint3d& newPoint,

bool& displayOsnapGlyph,

bool& changedTooltipStr,

char*& newTooltipString,

bool& retry,

AcGiViewportDraw* pDrawContext,

AcApDocument* document,

bool pointComputed,

int history,

const AcGePoint3d& lastPoint,

const AcGePoint3d& rawPoint,

const AcGePoint3d& grippedPoint,

const AcGePoint3d& cartesianSnappedPoint,

const AcGePoint3d& osnappedPoint,

AcDb::OsnapMask osnapMasks,

const AcArray<AcDbCustomOsnapMode*& customOsnapModes,

AcDb::OsnapMask osnapOverrides,

const AcArray<AcDbCustomOsnapMode*& customOsnapOverrides,

const AcArray<AcDbObjectId& pickedEntities,

const AcArray< AcDbObjectIdArray, AcArrayObjectCopyReallocator< AcDbObjectIdArray > &

nestedPickedEntities,

const AcArray<int& gsSelectionMark, // of 0th element in

// pickedEntities

// AutoSnap Info:

const AcArray<AcDbObjectId& keyPointEntities,

const AcArray< AcDbObjectIdArray, AcArrayObjectCopyReallocator< AcDbObjectIdArray > &

nestedKeyPointEntities,

const AcArray<int& keyPointGsSelectionMark,

const AcArray<AcGeCurve3d*& alignmentPaths,

const AcGePoint3d& computedPoint,

constchar* tooltipString )

{// Function Starts.

//CString ShowString=_T(""), tempVar=_T("") ;

//}

//}// IF(Second)->Ends.

// }// IF(First)->Ends.

return Acad::eOk;

}// Function Ends.

// stdafx.h

// stdafx.h : include file for standard system include files,

// or project specific include files that are used frequently, but

// are changed infrequently

#pragmaonce

#define WIN32_LEAN_AND_MEAN// Exclude rarely-used stuff from Windows headers

#include<stdio.h>

#include<tchar.h>

// TODO: reference additional headers your program requires here

// filter.h

#ifndef __FILTER_H__

#define __FILTER_H__

#include"acedinpt.h"

class AsdkInputPointFilter : public AcEdInputPointFilter

{

public:

AsdkInputPointFilter(){ m_changePoint = false; };

virtual Acad::ErrorStatus processInputPoint(

bool& changedPoint,

AcGePoint3d& newPoint,

bool& displayOsnapGlyph,

bool& changedTooltipStr,

char*& newTooltipString,

bool& retry,

AcGiViewportDraw* pDrawContext,

AcApDocument* document,

bool pointComputed,

int history,

const AcGePoint3d& lastPoint,

const AcGePoint3d& rawPoint,

const AcGePoint3d& grippedPoint,

const AcGePoint3d& cartesianSnappedPoint,

const AcGePoint3d& osnappedPoint,

AcDb::OsnapMask osnapMasks,

const AcArray<AcDbCustomOsnapMode*& customOsnapModes,

AcDb::OsnapMask osnapOverrides,

const AcArray<AcDbCustomOsnapMode*& customOsnapOverrides,

const AcArray<AcDbObjectId& pickedEntities,

const AcArray< AcDbObjectIdArray, AcArrayObjectCopyReallocator< AcDbObjectIdArray > &

nestedPickedEntities,

const AcArray<int& gsSelectionMark, // of 0th element in

// pickedEntities

// AutoSnap Info:

const AcArray<AcDbObjectId& keyPointEntities,

const AcArray< AcDbObjectIdArray, AcArrayObjectCopyReallocator< AcDbObjectIdArray > &

nestedKeyPointEntities,

const AcArray<int& keyPointGsSelectionMark,

const AcArray<AcGeCurve3d*& alignmentPaths,

const AcGePoint3d& computedPoint,

constchar* tooltipString);

// Non-standard protocol

//

void enableChanges(){ m_changePoint = true; };

void disableChanges(){ m_changePoint = false; };

private:

bool m_changePoint;

};

#endif//__FILTER_H__