diff --git a/EGkGdbConst.h b/EGkGdbConst.h index f94f82b..dba803c 100644 --- a/EGkGdbConst.h +++ b/EGkGdbConst.h @@ -21,9 +21,11 @@ const int GDB_ID_SEL = -2 ; const int GDB_ID_GRID = -3 ; //----------------- Costanti posizione di inserimento nel DB geometrico -------- -enum GdbInsPos { GDB_BEFORE = -1, - GDB_SON = 0, - GDB_AFTER = +1} ; +enum GdbInsPos { GDB_FIRST_SON = 0, + GDB_LAST_SON = 1, + GDB_BEFORE = 2, + GDB_AFTER = 3} ; +#define IS_GDB_SON(Ins) ( Ins == GDB_FIRST_SON || Ins == GDB_LAST_SON) //----------------- Costanti tipo salvataggio del DB geometrico ---------------- enum GdbSave { GDB_SV_TXT = 0, diff --git a/EGkGeomDB.h b/EGkGeomDB.h index c5014f8..6f40bdb 100644 --- a/EGkGeomDB.h +++ b/EGkGeomDB.h @@ -67,10 +67,10 @@ class __declspec( novtable) IGeomDB virtual bool GetLocalBBox( int nId, BBox3d& b3Loc, int nFlag = BBF_STANDARD) const = 0 ; virtual bool GetGlobalBBox( int nId, BBox3d& b3Glob, int nFlag = BBF_STANDARD) const = 0 ; virtual bool GetRefBBox( int nId, const Frame3d& frRef, BBox3d& b3Ref, int nFlag = BBF_STANDARD) const = 0 ; - virtual int Copy( int nIdSou, int nIdDest, int nRefId, int nSonBeforeAfter = GDB_SON) = 0 ; - virtual int CopyGlob( int nIdSou, int nIdDest, int nRefId, int nSonBeforeAfter = GDB_SON) = 0 ; - virtual bool Relocate( int nId, int nRefId, int nSonBeforeAfter = GDB_SON) = 0 ; - virtual bool RelocateGlob( int nId, int nRefId, int nSonBeforeAfter = GDB_SON) = 0 ; + virtual int Copy( int nIdSou, int nIdDest, int nRefId, int nSonBeforeAfter = GDB_LAST_SON) = 0 ; + virtual int CopyGlob( int nIdSou, int nIdDest, int nRefId, int nSonBeforeAfter = GDB_LAST_SON) = 0 ; + virtual bool Relocate( int nId, int nRefId, int nSonBeforeAfter = GDB_LAST_SON) = 0 ; + virtual bool RelocateGlob( int nId, int nRefId, int nSonBeforeAfter = GDB_LAST_SON) = 0 ; virtual bool ChangeId( int nId, int nNewId) = 0 ; virtual bool Erase( int nId) = 0 ; virtual bool EmptyGroup( int nId) = 0 ; diff --git a/EInAPI.h b/EInAPI.h index 48e0477..4386136 100644 --- a/EInAPI.h +++ b/EInAPI.h @@ -368,6 +368,10 @@ EIN_EXPORT BOOL __stdcall EgtMirrorGroup( int nId, const double vPnt[3], const d EIN_EXPORT BOOL __stdcall EgtShearGroup( int nId, const double vPnt[3], const double vN[3], const double vDir[3], double dCoeff) ; +// Machining +EIN_EXPORT BOOL __stdcall EgtInitMachMgr( void) ; +EIN_EXPORT int __stdcall EgtAddMachGroup( const wchar_t* wsName, const wchar_t* wsMachineName) ; + // Scene EIN_EXPORT BOOL __stdcall EgtInitScene( HWND hWnd, int nDriver, int b2Buff, int nColorBits, int nDepthBits) ; EIN_EXPORT BOOL __stdcall EgtGetSceneInfo( wchar_t*& wsInfo) ; diff --git a/EMkMachMgr.h b/EMkMachMgr.h new file mode 100644 index 0000000..0093359 --- /dev/null +++ b/EMkMachMgr.h @@ -0,0 +1,36 @@ +//---------------------------------------------------------------------------- +// EgalTech 2015-2015 +//---------------------------------------------------------------------------- +// File : EMkMachMgr.h Data : 23.03.15 Versione : 1.6c6 +// Contenuto : Dichiarazione della interfaccia IMachMgr. +// +// +// +// Modifiche : 23.03.15 DS Creazione modulo. +// +// +//---------------------------------------------------------------------------- + +#pragma once + +#include "/EgtDev/Include/EGkGeomDB.h" + +//----------------------- Macro per import/export ---------------------------- +#undef EMK_EXPORT +#if defined( I_AM_EMK) // da definirsi solo nella DLL + #define EMK_EXPORT __declspec( dllexport) +#else + #define EMK_EXPORT __declspec( dllimport) +#endif + +//----------------------------------------------------------------------------- +class __declspec( novtable) IMachMgr +{ + public : + virtual ~IMachMgr( void) {} + virtual bool Init( IGeomDB* pGeomDB) = 0 ; + virtual int AddMachGroup( const std::string& sName, const std::string& sMachineName) = 0 ; +} ; + +//----------------------------------------------------------------------------- +EMK_EXPORT IMachMgr* CreateMachMgr( void) ; \ No newline at end of file