//---------------------------------------------------------------------------- // EgalTech 2020-2021 //---------------------------------------------------------------------------- // File : EExBeamMgr.h Data : 01.06.21 Versione : 2.2f1 // Contenuto : Dichiarazione della interfaccia IBeamMgr. // // // // Modifiche : 30.08.20 DS Creazione modulo. // 01.06.21 DS Aggiunti parametri vsUAtt per Process. // //---------------------------------------------------------------------------- #pragma once #include "/EgtDev/Include/EgkGeomDB.h" #include "/EgtDev/Include/EExBeamConst.h" #include //----------------------- Macro per import/export ---------------------------- #undef EEK_EXPORT #if defined( I_AM_EEX) // da definirsi solo nella DLL #define EEX_EXPORT __declspec( dllexport) #else #define EEX_EXPORT __declspec( dllimport) #endif //----------------------------------------------------------------------------- class __declspec( novtable) IBeamMgr { public : virtual ~IBeamMgr( void) {} virtual bool Init( IGeomDB* pGDB, int nFlag = 0) = 0 ; virtual bool SetFlag( int nFlag) = 0 ; virtual int CreatePart( void) = 0 ; virtual bool SetPart( int nPartId) = 0 ; virtual bool ErasePart( void) = 0 ; virtual bool UpdatePart( void) = 0 ; virtual bool SetPartProdNbr( int nProdNbr) = 0 ; virtual bool SetPartName( const std::string& sName) = 0 ; virtual bool SetPartCount( int nCount) = 0 ; virtual bool SetPartBox( double dLength, double dHeight, double dWidth, bool bUpdate = true) = 0 ; virtual int AddProcess( int nGroup, int nProc, int nSide, const std::string& sDes, int nProcId, const Frame3d& frRef, const DBLVECTOR& vdPar, const std::string& sPar, const STRVECTOR& vsUAtt, int nCrvId, int nCrv2Id, bool bUpdate = true) = 0 ; virtual int ModifyProcess( int nGeomId, int nGroup, int nProc, int nSide, const std::string& sDes, int nProcId, const Frame3d& frRef, const DBLVECTOR& vdPar, const std::string& sPar, const STRVECTOR& vsUAtt, int nCrvId, int nCrv2Id, bool bUpdate = true) = 0 ; virtual bool EraseProcess( int nGeomId, bool bUpdate = true) = 0 ; virtual bool EnableProcess( int nGeomId, bool bEnable, bool bUpdate = true) = 0 ; virtual bool CalcSolid( int nPartId, bool bRecalc = false) = 0 ; virtual int GetSolid( int nPartId) const = 0 ; virtual bool ShowSolid( int nPartId, bool bShow) = 0 ; virtual bool GetBuildingIsOn( void) const = 0 ; virtual bool ShowBuilding( bool bShow) = 0 ; } ; //----------------------------------------------------------------------------- extern "C" { EEX_EXPORT IBeamMgr* CreateBeamMgr( void) ; }