1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- //////////////////////////////////////////////////////////////////////////////
- //
- // Copyright 2015 Autodesk, Inc. All rights reserved.
- //
- // Use of this software is subject to the terms of the Autodesk license
- // agreement provided at the time of installation or download, or which
- // otherwise accompanies this software in either electronic or hard copy form.
- //
- //////////////////////////////////////////////////////////////////////////////
- //
- // dbInterferencePE.H
- //
- // DESCRIPTION: AcDbInterferencePE Protocol extension abstract base class
- //
- #include "acdb.h"
- #include "dbmain.h"
- #pragma once
- #pragma pack (push, 8)
- //
- // AcDbInterferencePE Protocol extension abstract base class.
- //
- class AcDbInterferencePE : public AcRxObject
- {
- public:
- enum Flags {
- kDefault = 0x00,
- };
- ACRX_DECLARE_MEMBERS(AcDbInterferencePE);
- // Contract:
- // Implementer is expected to create new AcDbEntity instance(s), based
- // on interference between the two provided entities, and append the
- // new ents to the provided array. The caller will either post the new
- // ents to the db or delete them.
- // If the implementer does not know how to generate interference
- // between the provided entities, they should return "eNotApplicable"
- // or "eNotImplementedYet".
- // If the provided objects do not intersect, return "eNoIntersections".
- virtual Acad::ErrorStatus
- createInterferenceObjects( AcArray<AcDbEntity*>& interferenceObjects,
- AcDbEntity* pEnt1,
- AcDbEntity* pEnt2,
- unsigned int flags ) const = 0;
- };
- #pragma pack (pop)
- //#endif
|